Emacs Part 49 [無断転載禁止]©5ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2015/12/11(金) 17:55:35.35GNU Emacs - GNU Project - Free Software Foundation (FSF)
https://www.gnu.org/software/emacs/
EmacsWiki: サイトマップ
http://www.emacswiki.org/emacs/
前スレ
Emacs Part 48
http://peace.2ch.net/test/read.cgi/unix/1429172451/
0654名無しさん@お腹いっぱい。
2016/06/26(日) 06:36:08.72ownerのパスワードを聞かれてるだけだろ
その挙動以外あり得ない
0655653
2016/06/26(日) 06:55:41.40例えば、
sudo vi <ファイル名>
だと、 <ファイル名> の owner のパスワードではなく、
ログインユーザのパスワードしか聞かれないと思うのですが、
emacs では同様の操作はできないのですか?
0656名無しさん@お腹いっぱい。
2016/06/26(日) 07:32:16.0524.2.1と24.5.1使ってるけどそんな事ないよ
0657名無しさん@お腹いっぱい。
2016/06/26(日) 10:42:36.54いいね
0658名無しさん@お腹いっぱい。
2016/06/26(日) 16:18:11.67同じくそんな事起きないな
普通にsudoを使ってもrootのパスワードが聞かれてんじゃないか?
0659名無しさん@お腹いっぱい。
2016/06/26(日) 20:41:40.320660名無しさん@お腹いっぱい。
2016/06/27(月) 09:42:28.480661名無しさん@お腹いっぱい。
2016/06/28(火) 21:47:33.660662名無しさん@お腹いっぱい。
2016/06/29(水) 02:59:38.76つまりそういうことだよ
0663名無しさん@お腹いっぱい。
2016/06/29(水) 09:53:59.45少なくとも
$inline equation$
と
$$block equation$$
を区別しないといけない。
ちなみに、後者のマークアップは、事実上 obsolete だが。
0664名無しさん@お腹いっぱい。
2016/06/29(水) 12:09:23.260665名無しさん@お腹いっぱい。
2016/06/30(木) 02:07:50.35打ちながら進んでいけばいいじゃないと思った
0666名無しさん@お腹いっぱい。
2016/06/30(木) 02:32:12.950667名無しさん@お腹いっぱい。
2016/06/30(木) 13:32:11.25やっぱそうか ^^;
0668名無しさん@お腹いっぱい。
2016/07/02(土) 06:27:50.260669名無しさん@お腹いっぱい。
2016/07/02(土) 12:14:01.57ちなみにgitだと一時ファイルは作られないな
直接バッファ内に特定revisionが表示されてる
0670名無しさん@お腹いっぱい。
2016/07/02(土) 12:20:30.460671名無しさん@お腹いっぱい。
2016/07/02(土) 19:31:32.62ところでストールマンさんは、コンパイラ(gcc)とコンパイルツール(autotools,Make)も手掛けていながら、
どうしてこれをプロジェクト管理とかコード補完・解析に使おうとせず、CEDETとかやろうとしたんでしょうか?
0672名無しさん@お腹いっぱい。
2016/07/02(土) 20:19:58.740673名無しさん@お腹いっぱい。
2016/07/02(土) 20:52:58.040674名無しさん@お腹いっぱい。
2016/07/03(日) 00:23:16.02だけどclangでコード補完が出来るのならそれを使うべきではある
ちなみにCEDETはストールマンとは無関係だ
0675名無しさん@お腹いっぱい。
2016/07/03(日) 08:54:19.350676名無しさん@お腹いっぱい。
2016/07/05(火) 02:25:04.32カンパニーかコンプエニーか
意味合いからすれば後者の気がするが
0677名無しさん@お腹いっぱい。
2016/07/05(火) 12:03:55.41くっつけた結果別の単語になるのがミソなので当然前者だろうけど、
これも選択候補を直接バッファに挿入してくれないね。
0678名無しさん@お腹いっぱい。
2016/07/05(火) 13:32:31.59確定操作が不要になるってやつ?
0679名無しさん@お腹いっぱい。
2016/07/05(火) 14:14:33.11今度は補完されたくない単語を入力する時に鬱陶しい事になる
好みの問題だな
0680名無しさん@お腹いっぱい。
2016/07/05(火) 14:18:55.61主にそうだけど、
補完候補を常にポイント位置で確認できた方が視線の移動がなくていいとは思う。
でも次のように設定するとかなり好みの動作になった。
(setq company-idle-delay nil)
(setq company-auto-complete t)
(define-key company-active-map [tab] 'company-complete-common-or-cycle)
直接バッファに挿入はしないけどスペースやピリオドなどで自動的に確定するので、
補完開始キーをタブに設定すればタブをたたき続けてスペースとかで確定。
0681名無しさん@お腹いっぱい。
2016/07/05(火) 15:34:55.88ポップアップ出てる状態でTabおすと候補を順にバッファに直接展開、なんか適当な文字入力すると確定される
0682名無しさん@お腹いっぱい。
2016/07/05(火) 17:21:26.37そうだね。ただacは補完を開始して最初の候補を選択するのに
なぜかもう一度タブをたたかないといけない。
polemで補完を開始して最初の候補がpolemicだとすると、
auto-complete
polem + (tab) (tab) (space) -> polemic _
company
polem + (tab) (space) -> polemic _
0683名無しさん@お腹いっぱい。
2016/07/06(水) 17:14:44.500684名無しさん@お腹いっぱい。
2016/07/06(水) 17:32:37.34日常的なしおり程度の用途ならいいような。
bookmark plusならタグで分類とかできるからそっちにしたけど。
0685名無しさん@お腹いっぱい。
2016/07/06(水) 18:04:43.18ポイント位置と前後のテキストで場所覚えてるから変更入りまくるファイルだとずれまくって話にならない
0686名無しさん@お腹いっぱい。
2016/07/06(水) 19:47:13.290687名無しさん@お腹いっぱい。
2016/07/06(水) 20:09:35.960688名無しさん@お腹いっぱい。
2016/07/07(木) 02:19:59.680689名無しさん@お腹いっぱい。
2016/07/07(木) 11:45:20.760690名無しさん@お腹いっぱい。
2016/07/07(木) 12:17:47.47(defadvice kill-new (after kill-echo activate)
(message "Killed: %s" (ad-get-arg 0)))
0691名無しさん@お腹いっぱい。
2016/07/07(木) 14:11:47.22ad-get-argがvoidになる ^^;
0692名無しさん@お腹いっぱい。
2016/07/07(木) 18:00:23.65試してみたけど表示されたよ?
引数使っても同じだった
(defadvice kill-new (after kill-echo (string &optional replace) activate)
(message "Killed: %s" string))
0693名無しさん@お腹いっぱい。
2016/07/07(木) 23:20:23.790694名無しさん@そうだ選挙に行こう! Go to vote!
2016/07/10(日) 12:14:54.99この ace-jump モードに入った時に強制的に IME を US に切り替える方法、解決しましたか?
同じことで悩んでいて >>307 の方法ではうまくいかなかったので、良い方法があったら教えてください。
0695名無しさん@そうだ選挙に行こう! Go to vote!
2016/07/10(日) 14:06:28.720696693
2016/07/10(日) 22:26:17.01そうです、うちも Mac 環境です。
'mac-auto-ascii-mode でも 'mac-change-language-to-us でもだめでした。
0697名無しさん@お腹いっぱい。
2016/07/10(日) 23:18:42.520698名無しさん@お腹いっぱい。
2016/07/11(月) 12:32:10.60みずぽは無理として、最近lisp系で組まれた大規模システムってあるのかね?
昔、Paul Grahamの書いた文章か何かで例が載っていた気がするがいかんせん古すぎる。
0699名無しさん@お腹いっぱい。
2016/07/11(月) 20:41:30.57https://common-lisp.net/~dlw/LispSurvey.html#success-stories-successful-products-and-projects-written-in-lisp
↑あたりで1つずつ調べれば大規模システムがあるかもよ
0700名無しさん@お腹いっぱい。
2016/07/11(月) 21:42:04.30新しい分野の為に新しいプログラム言語をでっち上げるのもいいけど
マクロを使って新しい言語を作り上げるのがLispのやり方
0701名無しさん@お腹いっぱい。
2016/07/12(火) 02:15:15.710702名無しさん@お腹いっぱい。
2016/07/12(火) 12:49:53.26ただClojureはCommon Lispやelispとはだいぶ違っててあまり好きになれんが
0703名無しさん@お腹いっぱい。
2016/07/16(土) 03:17:42.88金融系こそ lisp じゃあるまいか
0704名無しさん@お腹いっぱい。
2016/07/16(土) 06:25:09.10金融系こそlispってのはどうしてそう思うの?
0705名無しさん@お腹いっぱい。
2016/07/16(土) 19:00:59.89変なバグ踏んじゃったかな
0706名無しさん@お腹いっぱい。
2016/07/16(土) 19:31:42.060707名無しさん@お腹いっぱい。
2016/07/20(水) 22:32:51.45慣れてないだけなのだろうか?
有難味が良くわからん
どのあたりが優れてるんだ?
0708名無しさん@お腹いっぱい。
2016/07/20(水) 22:34:41.27ライブラリを使わず書いちゃう人が多いのか
ライブラリちょっと弱くない
Lisp系列って
0709名無しさん@お腹いっぱい。
2016/07/20(水) 23:58:55.69対応の予定ってあるのでしょうか。
0710名無しさん@お腹いっぱい。
2016/07/21(木) 01:02:41.63あとオブジェクト指向とか遅延評価や継続みたいな他の言語だと処理系が対応しないと出来そうにない事もマクロを使って実装出来る
ただネイティブ対応してる言語に比べると機能が不完全とか余計な記述が必要とかしょうがない面はある
要するに構文なんて無いに等しいがマクロのお陰で工夫次第で色々出来る奥深さがあるという事だな
0711名無しさん@お腹いっぱい。
2016/07/21(木) 01:12:54.520712名無しさん@お腹いっぱい。
2016/07/21(木) 14:17:18.500713名無しさん@お腹いっぱい。
2016/07/21(木) 18:23:45.33なるほど
それ使えば楽そうだね
また試してみます
0714名無しさん@お腹いっぱい。
2016/07/21(木) 20:22:15.34それまで remove-if とか when-let すら、堂々と使えなかったって・・・
0715名無しさん@お腹いっぱい。
2016/07/21(木) 21:07:18.440716名無しさん@お腹いっぱい。
2016/07/22(金) 00:57:23.00こんな重要なものが標準で入ってないのが信じられん
お陰で色々亜種が氾濫しちゃってるけど
俺はSmartparensを自前キーバインド派だ
0717名無しさん@お腹いっぱい。
2016/07/22(金) 01:04:19.97読むのはスゲー大変だが…
0718名無しさん@お腹いっぱい。
2016/07/22(金) 16:16:12.81そうなんだ
使ってみよう意味がまだ理解できない
使ってみればわかるのかな?
>>717
その文書知らなかったよ
読んでみるよ
0719名無しさん@お腹いっぱい。
2016/07/24(日) 14:45:41.14NEWSにはdolistやcl-labels/labelsでの注意点が記述されていますが、
それ以外に注意することはありますか?
lexical-letでは不可能だったことが(setq lexical-binding t)でできるようになった、
あるいは同様の記述でもlexical-letとは動作が異なる、というようなことはありますか?
0720名無しさん@お腹いっぱい。
2016/07/24(日) 17:00:31.35let内でcountとか作ってもグローバル変数を上書きする事は皆無なんでlexical-letは使った事ないな
ちなみにmapcとかにクロージャーを渡すとレキシカルバインドでは問題無いけど
ダイナミックバインドだとエラーになる可能性は出て来る
だからレキシカルバインドだとエラーになる可能性が低くなるだけで特に気にした事はないな
返答になってないか
0721名無しさん@お腹いっぱい。
2016/07/24(日) 21:34:48.320722名無しさん@お腹いっぱい。
2016/07/25(月) 07:25:34.120723名無しさん@お腹いっぱい。
2016/07/25(月) 19:34:43.54アレはAtom動かしているElectronみたいにアプリウィジェットを提供する目標でもあるのでしょうか?
例えば 独特なUIな widget.el を置き換えるとか…
0724名無しさん@お腹いっぱい。
2016/07/25(月) 23:00:12.100725名無しさん@お腹いっぱい。
2016/07/26(火) 00:46:07.98WindowsでもMacでもGTK+版が標準になればxwidgetが標準に成り得るかもしれんが
0726名無しさん@お腹いっぱい。
2016/07/26(火) 07:51:46.990727名無しさん@お腹いっぱい。
2016/07/26(火) 08:22:15.90あっちはもっとややこしい
0728名無しさん@お腹いっぱい。
2016/07/26(火) 20:19:11.38括弧の対応を取るのは最低限のものは標準でも入ってた。lisp.elにある
キーにバインドされてないから自分で設定する必要があったり
必ず括弧の上にカーソルがないと駄目だったり使い勝手はちょっと微妙だけど標準という安心感はある
0729名無しさん@お腹いっぱい。
2016/07/27(水) 21:23:53.85頑張ればいける
http://i.imgur.com/y6krlHi.png
0730名無しさん@お腹いっぱい。
2016/07/27(水) 22:17:55.160731名無しさん@お腹いっぱい。
2016/07/28(木) 01:40:36.520732名無しさん@お腹いっぱい。
2016/07/28(木) 01:49:57.440733名無しさん@お腹いっぱい。
2016/07/28(木) 03:19:55.33; ロードパスの設定
(setq load-path (append (list
(expand-file-name "~/.emacs.d/init.el")
(expand-file-name "~/.emacs.d/site-lisp" ")
)
load-path))
0734名無しさん@お腹いっぱい。
2016/07/28(木) 11:53:10.23ロードパスにファイルを指定しても意味無くないか?
0735名無しさん@お腹いっぱい。
2016/07/28(木) 18:40:59.820736名無しさん@お腹いっぱい。
2016/07/28(木) 23:24:26.63(defface my1-keyword-face '((t :foreground "DeepSkyBlue2"))
"face for 正誤入力")
(defface my2-keyword-face '((t :foreground "OrangeRed1"))
"face for 正誤入力")
(defface my3-keyword-face '((t :foreground "orange1"))
"face for 正誤入力")
(font-lock-add-keywords 'text-mode
'(("0" . 'my1-keyword-face)
("2" . 'my2-keyword-face)
("4" . 'my3-keyword-face)))
0737名無しさん@お腹いっぱい。
2016/07/29(金) 01:46:54.94一体何がしたいのか
0738名無しさん@お腹いっぱい。
2016/07/30(土) 13:15:12.86recentfのスタートアップ時、高々25要素のファイル名リストをload-fileで読み込むのに、
100ミリ秒近くもかかっているんですけど、これって欠陥なんでしょうか?
試しに、local-variableコメントを付加しない、バイトコンパイルあり、load-fileの代わりに
requireを使うバージョンのrecentfに書き換えたら、5ミリ秒くらいになったのですが。
0739名無しさん@お腹いっぱい。
2016/07/30(土) 14:50:13.91バイトコンパイルするしないで10倍以上違うこともあり得る
あと最適化するときは一つずつやって計測しないと何で速くなったか分からんだろ
0740名無しさん@お腹いっぱい。
2016/07/30(土) 16:12:13.540741名無しさん@お腹いっぱい。
2016/07/30(土) 16:12:23.34おっしゃる通りです。数字ちゃんと取って貼った方が良かったですね。
25個のファイル名リストをsetqするelispを、各手段で読み込んだ実行時間
- load el (lvあり) 97.316182 ms
- load el (lvなし) 3.016255 ms
- require elc 2.263857 ms
- load elc 0.690197 ms
※ lv = local-variableコメント
※ elcファイルはバイトコンパイルの段階でlv情報が捨てられている
どうも local-variableコですメントのロードがかなり時間を食うみたい。
バイトコンパイルの効果は、1/4くらいと案外大きい。
requireは、パス探索が必要な分のロスが生じる。
問題はこのrecentf、わざわざいらないcoding情報を付加するためだけに
local-variableコメントなんか使っているんですよね・・・。
バイトコンパイルまで面倒見てくれる dump-variable-to-file なる関数が
標準であると良いんだけどなあ。
0742名無しさん@お腹いっぱい。
2016/07/30(土) 16:56:09.89*scratch*でmapcを使ってみたけどlexical-letとlexical-binding: tのletは同じ結果になった
emacs-version "24.5.1"
(require 'cl-lib) cl-lib
(setq lexical-binding nil) nil
(let ((count 4)) (mapc (let ((count 8)) (lambda (x) (print (incf count)))) '(a b c)))
5
6
7
(a b c)
(setq lexical-binding nil) nil
(let ((count 4)) (mapc (lexical-let ((count 8)) (lambda (x) (print (incf count)))) '(a b c)))
9
10
11
(a b c)
(setq lexical-binding t) t
(let ((count 4)) (mapc (let ((count 8)) (lambda (x) (print (incf count)))) '(a b c)))
9
10
11
(a b c)
0743名無しさん@お腹いっぱい。
2016/07/30(土) 17:14:27.17load-fileでもキャッシュが大きく有効するらしいので影響しないように取り直し
local-variableは関係なくて、load-fileの性能に問題ありなのか?
- load el (lvあり) 100 ms
- load el (lvなし) 98 ms
- load elc 92 ms
- require elc 2.4 ms
0744名無しさん@お腹いっぱい。
2016/07/30(土) 19:21:46.77lexical-let はファイル先頭に書いた時だけ有効なんでなかったっけ
0745名無しさん@お腹いっぱい。
2016/07/31(日) 19:33:57.56lexical-let は (require 'cl) で使えるようになる。
ファイルの先頭に書くのは -*- lexical-binding: t -*- で、lexical-binding が non-nil ならそのバッファがレキシカルスコープになる
0746名無しさん@お腹いっぱい。
2016/07/31(日) 20:22:46.050747名無しさん@お腹いっぱい。
2016/08/05(金) 18:21:39.44位置だけを移動させる方法を教えてください。
自分の理解の範囲では、
マークして R で移動させる方法で、
元と同じファイル名をタイプすればいいというところまではわかるのですが、
毎回ファイル名を入れなおすのが(特にファイル名が長い場合など)手間で
間違いも多いので、「同じファイル名でそのまま移動させる」方法があれば
教えてください。
環境は以下の通りです。
$ cat /proc/version
Linux version 3.13.0-91-generic (buildd@lgw01-21) (gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3) ) #138-Ubuntu SMP Fri Jun 24 17:00:34 UTC 2016
$ emacs --version
GNU Emacs 24.3.1
Copyright (C) 2013 Free Software Foundation, Inc.
GNU Emacs comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of Emacs
under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING.
0748名無しさん@お腹いっぱい。
2016/08/05(金) 18:50:57.36Rで移動先のディレクトリ名を入れてやれば良い
0749名無しさん@お腹いっぱい。
2016/08/05(金) 19:54:34.81`index文字'`space'`文字列'`space'`index文字'`space'`文字列'`space'`index文字'`space'`文字列'...
その index を区切り文字として分割して、結果を index 付きのリストとして変換したいんだけど
何かいい方法はないだろうか?とりあえず以下で実現はできた
(setq msg "1 ほげ 2 ふが 3 ほげほげ 4 ふがふが") ;; 元のインデックス付き文字列
(setq lst) ;; 出力用変数
(let ((i 0) idx)
(dolist (str (split-string msg " " t))
(if (= (% i 2) 0)
(setq idx str)
(setq lst (append lst (list (format "%s %s" idx str)))))
(setq i (1+ i))))
lst ;; -> ("1 ほげ" "2 ふが" "3 ほげほげ" "4 ふがふが")
0750名無しさん@お腹いっぱい。
2016/08/05(金) 20:03:05.93移動してそこからファイルを選んでるけれど、これより効率な
やり方ないだろうな。これまでemacsが2回もクラッシュしただよ。
編集中だったものが全てパア。ウインドーズだからだろうな。
0751名無しさん@お腹いっぱい。
2016/08/07(日) 03:16:58.330752名無しさん@お腹いっぱい。
2016/08/07(日) 10:27:31.92cl-loop 使うとか
(require 'cl)
(setq msg "1 ほげ 2 ふが 3 ほげほげ 4 ふがふが")
(loop for (x y) on (split-string msg " " t) by #'cddr collect (concat x " " y))
0753>>749
2016/08/07(日) 11:48:00.43Common Lisp の loop マクロ難しそうで敬遠してたんですが
こんなにシンプルに >>749 の問題を解決できるんですね
勉強になりました。ありがとう。
0754名無しさん@お腹いっぱい。
2016/08/07(日) 22:34:54.25Windows は IME patch が不安定だったので、俺は Google IME + mozc.el にした。
ファイル開いたりバッファ切り替えたりは Helm でやってる。
セーブの件は auto-save-buffers でも試したら。好きなひとは一定数いるようだよ。
■ このスレッドは過去ログ倉庫に格納されています