トップページunix
994コメント303KB

Emacs Part 47 [転載禁止]©5ch.net

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2014/12/20(土) 16:17:19.14
語り合いましょう。

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

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

前スレ
Emacs Part 46
http://peace.2ch.net/test/read.cgi/unix/1403458934/
0682名無しさん@お腹いっぱい。2015/03/09(月) 10:40:51.74
今日の二時だっけ
eww に被せるガワでもつくるしかないのか
0683名無しさん@お腹いっぱい。2015/03/09(月) 10:43:41.43
>>682
二時に何があるの?
0684名無しさん@お腹いっぱい。2015/03/09(月) 10:54:43.85
>>683
今日の2時でdat取れなくなるようになるって噂だよ
0685名無しさん@お腹いっぱい。2015/03/09(月) 10:56:10.59
>>684
ソースある?
0686名無しさん@お腹いっぱい。2015/03/09(月) 11:15:37.00
>>685
競馬板の名無しのソースがある
0687名無しさん@お腹いっぱい。2015/03/09(月) 11:49:11.72
>>686
それはソースではなくて、ただの噂。
0688名無しさん@お腹いっぱい。2015/03/09(月) 11:57:19.89
チラシの裏。

Cygwin の Emacsで find-names-dired でファイルが開けなくなっていた。
ぐぐって directory-listing-before-filename-regexp という変数を知る。

Dired claims that no file is on this line - GNU Emacs FAQ
http://www.gnu.org/software/emacs/manual/html_node/efaq/Dired-claims-that-no-file-is-on-this-line.html
673文字もの長さにビビって放置。そんな長い正規表現、人間に読めるかよ。

今日、re-builderの存在を思い出して、正規表現をあちこち1文字改変したり
して試行錯誤すると30分ぐらいで修正できた。こりゃ便利だな。
0689名無しさん@お腹いっぱい。2015/03/09(月) 12:39:22.60
未だにそんなデグレ起きてんのかよ
emacsェ…
0690名無しさん@お腹いっぱい。2015/03/09(月) 12:53:47.17
(setq dired-listing-switches (concat "--time-style=long-iso " dired-listing-switches))
で解決する話だったりしない?それ。
0691名無しさん@お腹いっぱい。2015/03/09(月) 14:11:47.54
まだいけるじゃねえか
0692名無しさん@お腹いっぱい。2015/03/09(月) 14:59:06.61
gnupack 11.00 で、
GNU Emacs 24.2.1 (i386-mingw-nt6.2.9200) of 2012-12-08 on GNUPACK
を使ってるんだけど、helm-swoop を実行しようとすると、
> helm-swoop--keep-nearest-position: Symbol's value as variable is void: --cl---cl-var--51405--
って、エラーがミニバッファに表示されて helm-swoop が使えない。

ただ、カーソルが日本語の部分とかにあると、なぜか helm-swoop が起動する。

なんか情報無いっすか?
0693名無しさん@お腹いっぱい。2015/03/09(月) 15:02:50.63
>>682>>684>>686
今後は話の出所をちゃんと確認しろよ
0694名無しさん@お腹いっぱい。2015/03/09(月) 16:04:05.38
>>686
競馬板のどのスレ?
0695名無しさん@お腹いっぱい。2015/03/09(月) 16:13:53.18
>>694
▼とるに足らないニュースの為のスレッド653▼ [転載禁止]©2ch.net
http://yomogi.2ch.net/test/read.cgi/keiba/1425351674/672
672 名無しさん@実況で競馬板アウト sage 2015/03/08(日) 13:12:38.41 ID:YE6gLG3X0
API非対応の2chブラウザ
明日の14時に使えなくなる模様
0696名無しさん@お腹いっぱい。2015/03/09(月) 16:17:29.47
うわー
使えない

あっはい
0697名無しさん@お腹いっぱい。2015/03/09(月) 16:20:58.44
>>695
なんでこんなの信じるんだろ・・・
0698名無しさん@お腹いっぱい。2015/03/09(月) 16:21:27.14
>>692
> なんか情報無いっすか?

http://rubikitch.com/2014/12/25/helm-swoop/
rubikitch@ruby-lang.org にメールしろってよ
0699名無しさん@お腹いっぱい。2015/03/09(月) 16:25:59.66
裏情報入手してないのか?
俺ソースだと3/13が切り替え日だ
0700名無しさん@お腹いっぱい。2015/03/09(月) 16:31:13.43
>>699
どこソースか出さなきゃ信用してもらえないよ
0701名無しさん@お腹いっぱい。2015/03/09(月) 16:36:08.72
俺ソースだとdat廃止はポシャったそうだ
0702名無しさん@お腹いっぱい。2015/03/09(月) 16:41:56.59
俺しょうゆ
0703名無しさん@お腹いっぱい。2015/03/09(月) 20:44:58.05
僕のスキルでは無理ですが、

1. EmacsをRuby or mrubyで実装しなおす(Rmax??)
2. rmaxコマンドで~/rmax.d/ 以下のディレクトリ階層と設定ファイルの雛形を自動生成
3. Rubyで設定・拡張できるようにする
4. ビルドツールにはRakeを使う

みたいなことができるとEmacsが一気に今風な感じになって面白いのになぁと思うんですけど… まあ、僕のスキルでは無理なんですけど…
0704名無しさん@お腹いっぱい。2015/03/09(月) 21:06:57.02
emacsをrubyで実装し直すってぶん殴りたくなる遅さかもしれない
何を実装するのか知らんけど
0705名無しさん@お腹いっぱい。2015/03/09(月) 21:16:07.04
そういや測定したこと無いんだけど emacs lisp 自体の速度って速いんだろうか
0706名無しさん@お腹いっぱい。2015/03/09(月) 21:29:40.65
>>689
まあCygwin版だから。バグは多いけれどバージョンアップは早い。
GNU Emacs 24.4.1 (x86_64-unknown-cygwin) of 2015-02-13 on desktop-new

>>690
それだと解決しなかった。残念。
こちらの現象は、1-9月だと月名と日の間に半角スペースが3個入ってしまうのが
原因で、正規表現の途中に " ?" を入れたら動くようになった。

しかしNavi2chが使えなくなったら、こんな気軽に書き込みはできなくなるなあ。
0707名無しさん@お腹いっぱい。2015/03/09(月) 21:38:22.70
>>706
ああ、ごめん。
標準だと find-ls-option の方見に行っちゃうからそっちの方に --time-sytle=long-iso を入れないとダメだわ。

自分ところはこんなふうにしてた。
find の -ls だと日付のフォーマット違いで開けないことがあったから直接 ls 呼ぶようにしたんだった。

(setq find-ls-option (cons (format "-exec ls %sd --time-style=long-iso {} +"
dired-listing-switches)
(format "%sd" dired-listing-switches)))
0708名無しさん@お腹いっぱい。2015/03/09(月) 23:20:32.94
(setenv "LC_TIME" "C") とか?
0709名無しさん@お腹いっぱい。2015/03/10(火) 14:09:42.47
指定したバッファでのみ permanent-local になるバッファローカル変数を作る方法はありませんかね?
普通に make-local-variable とかでバッファローカル変数を作ってもメジャーモード変更とかで
kill-all-local-variables が走ると消えちゃうし、
permanent-local フラグを立てちゃうとこんどは逆にどのバッファでも消えなくなってしまうし。
0710名無しさん@お腹いっぱい。2015/03/10(火) 16:00:24.68
>>575
if の使い方を見ると、大抵その人が Lisp に浸っているかどうかが分かる。
手続型言語から見ると if は「制御文」であり、処理の流れを切り替えるために 使う。たとえばこんな風。

(if need-hogehoge
(setq foo "hogehoge")
(setq foo "fugafuga"))

ああ、もったいない。if もやっぱり関数(厳密にはスペシャルフォーム)なのだ。
ifは第一引数の値 に応じて第二引数を返すか、第三引数以後の最後のものを返すかするという関数 である。

(setq foo (if need-hogehog "hogehoge" "fugafuga"))
これで、ifが返してくれる値を捨てることなくsetqに拾わせることができる。
とにかくLispは値が命。無駄に値を捨てない。もったいないお化けを出さない。
0711名無しさん@お腹いっぱい。2015/03/10(火) 22:19:24.83
何か面白いパッケージ無いかなあ
設定し尽くして飽きてきた
0712名無しさん@お腹いっぱい。2015/03/10(火) 22:36:26.86
>>710
cの三項演算子でそれよく使う。
0713名無しさん@お腹いっぱい。2015/03/10(火) 22:48:49.28
三項演算子は分かりづらくなるケースがあるからなんとも
人に説明するときは手続き型言語方式の方が分かりやすいし
0714名無しさん@お腹いっぱい。2015/03/10(火) 23:10:49.73
その発想が既にlisp的でないんだよなぁ
0715名無しさん@お腹いっぱい。2015/03/10(火) 23:12:09.39
暗黙の了解をぶち破らないと見えない世界がある
0716名無しさん@お腹いっぱい。2015/03/10(火) 23:13:24.93
モードラインに最大行数を常に表示したいんだけどどうやったらいいんだろう
0717名無しさん@お腹いっぱい。2015/03/10(火) 23:39:32.46
>>707-708
ありがとう。とりあえず今は動いているからいいわ。
また動かなくなったらその時考える。
ただ、LC_TIME=C はちょっと表示が寂しいかも。
0718名無しさん@お腹いっぱい。2015/03/11(水) 05:08:57.54
>716
(column-number-mode t)
で現在位置と最大行数が(100/200)みたいな感じで表示されたよん
0719名無しさん@お腹いっぱい。2015/03/11(水) 12:38:06.68
>>718
column-number-mode は桁数の表示
line-number-mode と両方有効な時は (100,0) という風に (行数,桁数) が表示されるけど
総行数の表示機能は無かったはず
0720名無しさん@お腹いっぱい。2015/03/11(水) 12:38:48.16
>>716
;; `line-number-mode' と `colmun-number-mode' のモード行書式設定(変数
;; `mode-line-position' の第三要素)を、総行数を共に表示する書式に置き
;; 換える。
(rplaca (cddr mode-line-position)
'(line-number-mode
((column-number-mode
;; `line-number-mode' と `column-number-mode' 両方有効な場合:
;; " (現在行数/総行数,現在桁数)"
(:eval (format " (%%l/%d,%%c)" (1+ (count-lines (point-min) (point-max)))))
;; `line-number-mode' のみ有効な場合: " L現在行数/総行数"
(:eval (format " L%%l/%d" (1+ (count-lines (point-min) (point-max)))))))
;; `column-number-mode' のみ有効な場合: " C現在桁数"
((column-number-mode " C%c "))))

*参考にしたページ
Mode Line Data - GNU Emacs Lisp Reference Manual
https://www.gnu.org/software/emacs/manual/html_node/elisp/Mode-Line-Data.html
"(:eval form)" と "(symbol then else)"

%-Constructs - GNU Emacs Lisp Reference Manual
https://www.gnu.org/software/emacs/manual/html_node/elisp/_0025_002dConstructs.html
"%l" が現在行数、"%c" が現在桁数
上記コードではformat関数に解釈されないようエスケープしているので "%%l" となっている

Emacsのモードラインにページの総行数をきれいに表示する方法 - 三等兵
http://d.hatena.ne.jp/sandai/20120307/p1
`mode-line-position' の中身の解説
0721名無しさん@お腹いっぱい。2015/03/11(水) 12:55:56.48
>>720
ありがとうございます!綺麗に表示されるようになりました!
0722名無しさん@お腹いっぱい。2015/03/11(水) 19:54:59.56
文字合成楽しい
微妙に気に入らないフォントでも修正かけられるのはありがたい

;; 0にスラッシュ入ってないフォントで0にスラッシュを入れる
(font-lock-add-keywords nil '(("0" 0
(compose-region
(match-beginning 0) (match-end 0)
(compose-string "0/")
'decompose-region))))
0723名無しさん@お腹いっぱい。2015/03/11(水) 20:00:09.84
仕上がった0の画像とか
他の事例もあればjpg頼む
0724名無しさん@お腹いっぱい。2015/03/11(水) 20:26:42.29
>>723
http://i.imgur.com/ia0NtfE.png
こんな感じ
0725名無しさん@お腹いっぱい。2015/03/11(水) 23:31:25.36
calculator-mode に C-c C-c をキーバインドしようとしているのですが以下のエラーがでてうまくいきません
どのようにすれば回避できるのでしょうか?

(define-key calculator-mode-map
(kbd "C-c C-c") 'somefunc)
;; => Key sequence C-c C-c starts with non-prefix key C-c
0726名無しさん@お腹いっぱい。2015/03/12(木) 00:25:06.38
(define-key calculator-mode-map (kbd "C-c") nil)
(define-key calculator-mode-map (kbd "\C-c\C-c") 'somefunc)
0727名無しさん@お腹いっぱい。2015/03/12(木) 14:14:35.54
>>726
うまく出来ました。
予めプリフィクスになるものをnilで初期化?する必要があるんですね。
ありがとうございました!
0728名無しさん@お腹いっぱい。2015/03/12(木) 14:47:27.85
C-cに機能が割り当てられていて、プレフィックスとして使えないっていうメッセージなんだけどね
0729名無しさん@お腹いっぱい。2015/03/12(木) 15:16:22.01
Solarizedのdarkが利用できない件
(load-theme 'solarized-dark t)
ってしてるのに普通の方ででちゃう
0730名無しさん@お腹いっぱい。2015/03/12(木) 16:04:11.28
>>729
(setq frame-background-mode 'dark)
(load-theme 'solarized t)

https://github.com/sellout/emacs-color-theme-solarized
> To switch between the light and dark variations of Solarized, set the frame’s
> background-mode. This can be accomplished globally using M-x
> customize-variable frame-background-mode or on a per-frame basis with
> (set-frame-parameter nil 'background-mode 'light) (or 'dark).
0731名無しさん@お腹いっぱい。2015/03/12(木) 16:36:17.88
theme は wombat が好きだな
なにがいいって標準でついてるってのがいい
0732名無しさん@お腹いっぱい。2015/03/12(木) 19:10:35.78
>>722
いまいち安定しない
diredで普通の0が表示されたりする
0733名無しさん@お腹いっぱい。2015/03/12(木) 20:14:59.25
>>730
ありがとうございます
0734名無しさん@お腹いっぱい。2015/03/12(木) 21:25:41.01
明日でnavi2chも終わりか
ただでさえ書き込み少なかったここも今度こそ終わるな
0735名無しさん@お腹いっぱい。2015/03/12(木) 23:24:56.18
なんで終わりなの? 2chの仕様ががらっと変わるとか?
0736名無しさん@お腹いっぱい。2015/03/12(木) 23:45:38.54
>>734
ソース
0737名無しさん@お腹いっぱい。2015/03/12(木) 23:48:32.38
>>736
2ちゃんねる専用ブラウザをご利用の皆さまへ
http://www.2ch.net/browsers.html
> 3月13日からは新仕様に対応した専用ブラウザをご利用ください。
0738名無しさん@お腹いっぱい。2015/03/13(金) 00:00:32.33
どうや、かけるか?かけるんか?
0739名無しさん@お腹いっぱい。2015/03/13(金) 02:48:09.65
お別れのテスト
0740名無しさん@お腹いっぱい。2015/03/13(金) 03:01:09.67
で、「新仕様」ってのはどこにスペックが記載されてるわけ?

「本日より2ch.net専用ブラウザに広告が配信されるようになりました。」
とのことだが、これは navi2ch のように text しか対応していない
2ch viewer には関係のないことのように思える。

現に今も俺は navi2ch で書き込みしているわけで。
0741名無しさん@お腹いっぱい。2015/03/13(金) 05:40:14.28
>>740
横着せずページの下まで読みましょう
0742名無しさん@お腹いっぱい。2015/03/13(金) 06:45:09.68
>>740
navi2ch スレ見てきなさいな。
0743名無しさん@お腹いっぱい。2015/03/13(金) 06:51:47.94
>>734
メールはともかく、2ch まで Emacs で読み書きしなくてもいいじゃん
って思ってたけどみんな navi2ch から書いてるの?
0744名無しさん@お腹いっぱい。2015/03/13(金) 07:34:12.77
>>740
http://developer.2ch.net/
0745名無しさん@お腹いっぱい。2015/03/13(金) 08:24:15.18
>>737
dat読めなくなりますとは言ってないような
0746名無しさん@お腹いっぱい。2015/03/13(金) 08:27:32.33
3/13かどうかはしらんけど時間の問題じゃね
0747名無しさん@お腹いっぱい。2015/03/13(金) 10:57:30.35
ほんまに時間の問題だったな。
0748名無しさん@お腹いっぱい。2015/03/13(金) 11:00:44.99
まだ大丈夫やでー
0749名無しさん@お腹いっぱい。2015/03/13(金) 11:14:55.01
オワタ
ブラウザから書き込んでる
0750名無しさん@お腹いっぱい。2015/03/13(金) 20:58:09.80
>>740
当日までこんなのんきなこと言ってる奴いたのかここは…
0751名無しさん@お腹いっぱい。2015/03/14(土) 21:25:55.45
>>743
読むだけなら何でもいいけど、書くときにemacs上なのが大事なのだ。
From Navi2ch User
0752名無しさん@お腹いっぱい。2015/03/15(日) 04:40:18.14
bathyscapeとか言うのに切り替えた(´・ω・`)
0753名無しさん@お腹いっぱい。2015/03/15(日) 22:04:36.14
Not Emacsのご紹介

Not Emacs is a text editor for programmers that supports many of the
most common emacs keybindings. This app is based on the ymacs editor
and the Gambit Scheme programming system.

Requires iOS 6.1 or later. Compatible with iPhone, iPad, and iPod
touch. This app is optimized for iPhone 5.

https://itunes.apple.com/us/app/not-emacs/id948330589?mt=8
0754名無しさん@お腹いっぱい。2015/03/16(月) 22:51:25.36
>>753
いいね
0755名無しさん@お腹いっぱい。2015/03/17(火) 00:08:01.59
>>753
Android版はないみたいだ。
まあそれ以前にAndoroid版Emacsを自分は起動できない
ままだけど。
0756名無しさん@お腹いっぱい。2015/03/17(火) 00:11:00.90
私も起動できません
一瞬terminal session is runningとだけでて画面すら見せてもらえない
2chMate 0.8.7.7 dev/LGE/Nexus 5/5.0.2/LR
0757名無しさん@お腹いっぱい。2015/03/17(火) 00:23:48.40
android 版はストアから入れたあと起動まで色々やることがあったはず。
0758名無しさん@お腹いっぱい。2015/03/17(火) 00:28:56.12
教えてくれてありがと
英語だったから読み飛ばしてたわ
0759名無しさん@お腹いっぱい。2015/03/17(火) 04:39:06.89
>>753
神!
早速入れてみた。

どこまで出来るんだろう。
ていうか操作性良すぎ
0760名無しさん@お腹いっぱい。2015/03/17(火) 08:04:22.49
>>759
泥端末持ちだから試せないんだけどそんなに操作性良いの?
ソフトウェアキーボードでC-nだのC-x C-fだの入力するの大変そうだけど
フリックに特化した仕組みとかはいってるのかしらん
0761名無しさん@お腹いっぱい。2015/03/17(火) 08:47:55.81
windows mobileではキーボード自在に作れたからxのフリックでCtrl+xとかできていて
すばらしかったなー
0762名無しさん@お腹いっぱい。2015/03/17(火) 11:14:36.09
>>760
当たり前だがPCほどではない。
スマホでEmacs動かすようなものたくさん試したけど
その中では抜群の操作性
0763名無しさん@お腹いっぱい。2015/03/18(水) 00:15:18.23
U+FE37(︷) と U+FE38(︸) の組み合わせに対しても C-M-n とか C-M-p が有効なんだな
なんか笑ってしまった。
0764名無しさん@お腹いっぱい。2015/03/18(水) 14:24:34.44
このテーマジェネレータいいな
http://emacsfodder.github.io/emacs-theme-editor/

こういうの Emacs 内で完結できないもんかしら
カラーピッカー実装するのが大変か
0765名無しさん@お腹いっぱい。2015/03/18(水) 16:10:18.56
-nwで起動されたときに、init.elの一行を評価させたくないんだけど
0766名無しさん@お腹いっぱい。2015/03/18(水) 16:40:23.61
>>765
(window-system)の値で分岐
0767名無しさん@お腹いっぱい。2015/03/18(水) 16:42:11.39
(if window-system (foo))

マジでお前ら使えないな
結局stackoverflowさんだよ
というか、navi2chのせいか?
いや、おまえら悪くない、JIMが悪い

elispってどうやって覚えんの?
文法はええんやけど、window-systemって変数があるとかリファレンスは?
0768名無しさん@お腹いっぱい。2015/03/18(水) 17:03:45.06
stackoverflow で聞けよ
0769名無しさん@お腹いっぱい。2015/03/18(水) 17:08:25.32
ここで聞け
https://github.com/vim-jp/issues/issues
0770名無しさん@お腹いっぱい。2015/03/18(水) 19:06:47.05
vimさんの子供になりなさい
0771名無しさん@お腹いっぱい。2015/03/18(水) 23:03:07.38
普通にインストールすればInfoも入っているでしょ?
Info で elisp > Display > Window Systems を参照。
x, w32 とかウィンドウシステムの種別も分かるようだ。
0772名無しさん@お腹いっぱい。2015/03/19(木) 02:45:17.72
うわあinfoすら知らないオープンソース童貞に使えねえとか言われたあww
0773名無しさん@お腹いっぱい。2015/03/19(木) 03:23:39.66
ただ再処に info を上から下まで全部読んで使い始める暇な人はいないだろうしな。
XX を制御する変数は…なんてのは info 検索するよりググったほうがとっかかり見つかる気がするわ。
そっから対象のドキュメントなり info 読むでいい気がする。
0774名無しさん@お腹いっぱい。2015/03/19(木) 07:24:16.96
それはまともに読んだことない人の意見だとすぐわかる
逆にinfo読み込まんでelispで何書けんのかナゾっていうか
だからいつまでたってもナンモ書けんのだろキミら?(笑
0775名無しさん@お腹いっぱい。2015/03/19(木) 09:04:30.97
いや、読み込んでる人少ないと思うよ。
>>774 だって煽りたいから言ってるだけで全部読んだことないだろうし。
0776名無しさん@お腹いっぱい。2015/03/19(木) 12:36:02.89
涙拭けよ
07777712015/03/19(木) 12:41:17.19
まぁ.emacsでsetqするくらいならわざわざinfo読まないかな。
(今はcustomizeがあるからなおのこと)
ググって変数・関数名が分かればdescribe-variable, describe-functionで
調べて、それでもわからない場合にようやくinfoに当たる感じ。
elisp言語仕様はinfo見ないとだけど。
0778名無しさん@お腹いっぱい。2015/03/19(木) 12:47:35.94
customize まともに使ってる人ってどれぐらいいるんだろう…
0779名無しさん@お腹いっぱい。2015/03/19(木) 13:28:16.04
まともに使うの定義が分からんがcustomizeで済むものは全部customizeでやってるよ
Helpを見ながら設定できんだから便利だとは思わんか?
多分お前らはググって日本語の解説見ながらsetqの行をコピってくるだけだろうがな
0780名無しさん@お腹いっぱい。2015/03/19(木) 13:58:40.73
あんなクソUIありがたがってる奴の気がしれん
0781名無しさん@お腹いっぱい。2015/03/19(木) 14:27:28.51
便利っていうか見通し悪すぎ以外の感想無いな
GUI に慣れてる人とかだと嬉しいのかねぇ
0782名無しさん@お腹いっぱい。2015/03/19(木) 14:28:31.79
elispどうベンキョーすんだ?という話が
setqレベルの話になってて愕然
せいぜい背伸びしてcustomizeとかもう
■ このスレッドは過去ログ倉庫に格納されています