Emacs Part 50 [無断転載禁止]©2ch.net

レス数が950を超えています。1000を超えると書き込みができなくなります。
2016/12/19(月) 06:49:45.33
前スレは落ちていないみたいだけど。

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

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

前スレ
Emacs Part 49
http://echo.2ch.net/test/read.cgi/unix/1449824135/
2017/12/06(水) 09:34:13.28
>>879
誤 鏡
正 鑑
2017/12/06(水) 09:53:53.34
>>879
煽って誤字とかダッサ
Emacs ユーザーはゴミしかいないのなwww
882名無しさん@お腹いっぱい。
垢版 |
2017/12/06(水) 09:54:45.34
>>875
update-alternatives使えるんでない?
2017/12/06(水) 10:06:08.44
まあ鑑も鏡も同じ意味だけどな。
2017/12/06(水) 10:29:35.01
同じ意味だけどな(キリッ
2017/12/06(水) 11:55:37.65
>>882
http://log-c.blog.so-net.ne.jp/2015-06-30-1
にあるようにupdate-alternatives --config emacs
とすると、command not foundとでます
2017/12/06(水) 11:56:55.95
>>881
>>884
別に誤字でもないのに何が言いたいんだ?
887名無しさん@お腹いっぱい。
垢版 |
2017/12/06(水) 12:03:10.13
わかりました
/usr/local/bin
にemacs -> emacs-24.5
と書いてました。つまり、emacs-24.5にリンクを貼っていました。
失礼しました。/usr/local/binについては.bash_profileでpathを通していました
2017/12/06(水) 12:03:29.67
ありがとうございました
2017/12/06(水) 12:14:26.11
>>884
ご苦労様って言われると怒るタイプ?
2017/12/06(水) 14:51:36.63
(´-`).。oO(スレが伸びてると思ったら変なのしか集まってないな…
2017/12/07(木) 17:14:00.71
初心者を大事にしないと
2017/12/08(金) 01:39:56.29
日本人の初心者なんか要らなくね
2017/12/08(金) 16:02:32.17
質問は頑張って英語でEmacs Stack Exchangeでしたほうがいいよ
2017/12/08(金) 19:53:54.42
emacsスレは昔は親切だったのにな
2017/12/08(金) 23:06:13.34
しんせつなのは全部るびきち先生だしな
2017/12/09(土) 03:56:30.82
ここにるびきち先生おられるんですか
知らなかった。
897名無しさん@お腹いっぱい。
垢版 |
2017/12/09(土) 09:26:40.51
>>841
Ricty とか見分けがつくフォント使え
見やすさ大事
2017/12/09(土) 10:10:58.40
! <-これとか目立つフォントってあるかな?C文法系は記号間違いは致命的
2017/12/10(日) 02:35:41.04
>>898
Ricty とか? ビットマップじゃないけど。
2017/12/10(日) 10:10:58.60
Ricty入れてみた

フォントもだけどカラーテーマ選びも重要だあね
2017/12/10(日) 14:06:02.57
>>898
そこだけ色変えるのが手っ取り早いとおもうけど
2017/12/10(日) 19:37:43.96
>>897 変えてみた。ありがとう
2017/12/11(月) 02:08:31.57
そこでdroid dottedですよ
904名無しさん@お腹いっぱい。
垢版 |
2017/12/11(月) 22:13:08.19
【自然破壊】何百種類ものコンピューターは必要ない
http://lavender.5ch.net/test/read.cgi/kaden/1510387401/l50
世界教師マイトLーヤ「大暴落は日本からスタート」
http://rio2016.5ch.net/test/read.cgi/2chse/1512813686/l50
2017/12/14(木) 20:35:38.19
質問です。
Emacsで開発環境を構築していますが、まさに
http://www.wagavulin.jp/entry/20100330/1269953592
このURLの問題に直面しています。
実際のところ。"make -k -C .."ようにしたとしても
エラーメッセージからソースコードをジャンプすることができず不便です。
どーするんですか???
2017/12/14(木) 21:23:52.52
>>905
http://d.hatena.ne.jp/teny/touch/20060626/p1
これを改造して*.cやら拡張子でgcc等のコマンドを呼ぶようにしている

エラーメッセージからは標準機能?の [C-x `] or [M-x next-error] で該当箇所に飛べるはず
2017/12/14(木) 21:41:29.39
>>906
ありがとうございます
なるほどこのように切り替えて制御するのは名案です
早速スクリプトをこしらえようかと思います
しかし、エラーメッセージの件については'make -C ..'にとってのカレントディレクトリと
実際の実行するEmacsのカレントディレクトリがことなるためジャンプに手動で検索を要します。

オフトピですが、該当記事の次の記事
http://d.hatena.ne.jp/teny/touch/20060626/p2
の発想はすごいですね
908名無しさん@お腹いっぱい。
垢版 |
2017/12/15(金) 03:49:24.57
>>905
今の Emacs ユーザは projectile 使ってそれ解決していると思う
https://github.com/bbatsov/projectile
プロジェクト管理にまつわる色々やってくれるっていうパッケージ

開発プロジェクトのルートディレクトリがgitとかのVCSで管理されていれば、
サブディレクトリで作業しているときでも
M-x projectile-compile-project で所望の動作
(ルートディレクトリ下でコンパイルコマンドを実行)が得られる
909906
垢版 |
2017/12/15(金) 20:18:21.35
>>907
(Dired-Modeからファイルを開いたりすると次からそこがEmacsのカレントになってりしなかったっけ…)
ディレクトリをまたぐ場合は結局Makefileを作ったり、全体をetagでTAGSファイルを作ったりしてました
そうすると
;; ***** etags *****
;; [M-.] 関数位置にジャンプ
;; [M-*] ジャンプした位置から戻る
;; [M-/] 定義した関数、変数の補完
;; [M-<tab>] 定義した関数、変数の補完
こんな感じで関数間をタグジャンプ出来ますので

あとよく使うのは
;; ***** プログラミング *****
;; [C-x `] エラー箇所にジャンプ (next-error)
;; [C-M-n] 対応するカッコへジャンプ(後ろへ)
;; [C-M-p] 対応するカッコへジャンプ(前へ)
;; [C-M-a] 関数の先頭に移動
;; [C-M-e] 関数の末尾に移動
;; [C-M-\] 領域をインデントする (indent-region)
こんなものでしょうか…
(でもこのあたりはvimとctagの方が便利でそっちばかり使ってましたw)

>>908
私は10年以上前の環境からあまり変わってないので便利そうですね〜
2017/12/16(土) 12:53:04.36
ansi-termとtermは同義語だとおもっていました。
というか多くの解説では同義語のように解説されていました。
しかしM-x ansi-term と M-x term でそれぞれ起動すると
バッファ名が ansi-term, terminalとそれぞれ違います。
キーバインドも違います。特に term のほうはキーバインドの多くが無効になっています。
結局なにが違うのですか?どこで違いの解説をみることができますか?
2017/12/16(土) 17:01:18.51
すみません。
自己解決しました。
失礼いたしました。
2017/12/16(土) 19:22:17.39
答えはなんなんだ
2017/12/16(土) 19:46:56.56
質問です、emacs上のポインタにある文字の種類を調べるには、どのキーを押せば出てくるでしょうか?
2017/12/16(土) 20:59:35.51
>>913 質問の意図が汲み取りづらいけど「C-x =」とかは違う?
915913
垢版 |
2017/12/16(土) 21:28:42.36
これなんですが、もうちょっと細かい情報が出るようなコマンドなんです。
2017/12/16(土) 22:16:49.91
C-u C-x =
917913
垢版 |
2017/12/16(土) 22:32:56.14
>>916
> C-u C-x =

それです!ありがとうございました。
2017/12/16(土) 23:34:56.06
emacsを開いたとき、使っている初期設定ファイルのフルパスを表示
させるコマンドはあるのでしょうか?
919918
垢版 |
2017/12/16(土) 23:40:57.08
補足します。emacsを起動しました。
タイトルバーにフルパスを表示させたくて
init.elを探してそこに
(setq frame-title-format "%f")
と書いてemacsを再起動させたのですが、その設定が
反映されていませんでした。それで書き直したinit.elは別のinit.elだったのか?
emacsが用いているinit.elは他にあるのかと思った次第です
2017/12/17(日) 01:07:25.49
追加ですが、
scratchバッファで
(setq frame-title-format "%f")
とすると返ってくる値は
"%f"
なります。
タイトルバーは
1.Default(emacs24.5)となっているだけです。
そこで別のファイルを開いても、タイトルバーにはパスは表示されません。
1.Default(emacs24.5)となっているだけです。
921名無しさん@お腹いっぱい。
垢版 |
2017/12/17(日) 01:08:26.26
>>918
読み込んだ初期化ファイルの名前は M-x describe-variable => user-init-file で見れる
初心者のうちは ~/.emacs とか ~/.emacs.el とか余計なファイル作っていて
それで ~/.emacs.d/init.el を読み込めていなかったということはあるかもね

初心者の init.el 読み込めていないあるある、 他の理由と解決策は
・よくわからないままバイトコンパイルしている => ~/.emacs.d/init.elc を削除
・実は読み込み中エラーが発生していた => emacs --debug-init でデバッグ
とかか
2017/12/17(日) 01:58:38.11
とりあえずM-x describe-variable => user-init-file
をすると
user-init-file is a variable defined in `C source code'.
Its value is "~/.emacs"
と出ました。ところが~"~/.emacs"というディレクトリは作っていないという
ことがわかりました。
init.elc
というディレクトリもファイルも作っていないことを確かめました。
elcはelの拡張子のファイルをより早い形にコンパイルすると変わるファイルの
拡張子だったと思います。それは
elispというディレクトリに保存されるものなのでしょうか?
2017/12/17(日) 01:59:29.95
>>921
おしえていただきありがとうございます。
お礼が遅れました。
それでは
2017/12/17(日) 02:15:38.29
>>919
> init.elを探してそこに
このinit.elはどこにあるんですか?
2017/12/17(日) 02:26:50.36
せめてOS周りの環境書かないと答えようが無いんじゃ?
2017/12/17(日) 02:34:49.42
>>924
init.elは~/.emacs.d_24_5
にあります。なぜそんなディレクトリの
init.elを読み込むかというと>>887
で書いている通りでありまして、
.bash_profileに読み込むパスを書いていて
その中の/usr/local/binでemacs->emacs-24.5
というリンクを入っているからです。
しかし、それ以前になぜscratch バッファで
(setq frame-title-format "%f") としてC-jを
してるのに、新たにその設定を読み込んで
実行しないのかという疑問もあります。
2017/12/17(日) 02:36:34.75
>>925
どのように必要な環境を書き出せるで
しょうか?
2017/12/17(日) 02:37:17.70
寝ます。おやすみなさい
2017/12/17(日) 02:51:45.24
正直なところいろいろよくわからないので、
とりあえず気が付いたところだけ。

>>922
> user-init-file is a variable defined in `C source code'.
> Its value is "~/.emacs"
> と出ました。ところが~"~/.emacs"というディレクトリは作っていないという
> ことがわかりました。
これはディレクトリではなくファイルです。
~/.emacsというファイルがあればそれを読み込むはずです。
2017/12/17(日) 11:03:44.18
>>926
> しかし、それ以前になぜscratch バッファで
> (setq frame-title-format "%f") としてC-jを
> してるのに、

frame-title-format:

This variable has the same structure as ‘mode-line-format’...

mode-line-format:

%f -- print visited file name.

scratch バッファは特定のファイルに紐付いていないのでフレームタイトルは
変わらないんじゃ? あと、regular file以外(例えば dired バッファ)でも変わらない。
こちらの環境 Emacs 27.0.50 (build 2, i686-pc-linux-gnu, GTK+ Version 3.22.25)
ではそうなっている。
2017/12/17(日) 14:20:57.48
結局次のような形になりました。

/usr/local/binにあったemacs->emacs24.5ディレクトリへのリンクを削除した。
すると24.5が立ち上がらなくなったが、22.1?が立ち上がり、しかも
helmも使えた。だから24.5と22.1が使っている初期設定ファイルが同じものなんだろうなとおもった。
describe-variable->user-init-file
をしても
.emacs
と出てきていたが、.emacsというファイルは見つからなかった。ただCでコードされているということは出てきたものに書いていた。

リンクで24.5ディレクトリを読みに行かせていたはずで、その中の
init.elを読んでくれていたはずだったがそうではなかった。

ただ、.emacs.dが別にあり(いつできたか知らない)
auto-save-list
というのが入っていた。
それをデスクトップに移動してemacsが読めなくした。
その上で、.emacs-24.5というディレクトリを.emacs.dに変えた。
その中の.init.elを読み込んで欲しいのでそうした。

そうすると
An error has occurred while loading `/Users/hiro/.emacs.d/init.el':

Symbol's value as variable is void: user-emacs-directory

To ensure normal operation, you should investigate and remove the
cause of the error in your initialization file. Start Emacs with
the `--debug-init' option to view a complete error backtrace.
というエラーが出た。

ということで、とりあえずは解決しました。最初からインストールすることに
決めました。
2017/12/17(日) 14:22:47.82
いろいろ教えてくださり、ありがとうございました。
2017/12/17(日) 14:34:30.91
>>931
> その上で、.emacs-24.5というディレクトリを.emacs.dに変えた。
> その中の.init.elを読み込んで欲しいのでそうした。
>
> そうすると
> An error has occurred while loading `/Users/hiro/.emacs.d/init.el':
>
> Symbol's value as variable is void: user-emacs-directory
>
> To ensure normal operation, you should investigate and remove the
> cause of the error in your initialization file. Start Emacs with
> the `--debug-init' option to view a complete error backtrace.
> というエラーが出た。
これは~/.emacs.d/init.elが読み込まれているということです。
その中のuser-emacs-directoryが定義されていないということなので、
中身を晒せばわかる人がいるかもしれませんね。
934名無しさん@お腹いっぱい。
垢版 |
2017/12/17(日) 14:54:10.83
>> 931
再インストールしても解決しないよ、それ。
まず--debug-init付けてエラー内容確認しないと無理。

init.elも晒すべきだろうね。
親切な人が見てくれるかも知れない
2017/12/17(日) 16:36:28.29
ありがとうございます。
再インストールしても同じinit.elを使うのなら同じようにエラーがでるでしょうね。
エラーのうちの一つは、22以前のバージョンでuser-emacs-directory変数が未定義
だから出たというのはわかっています。そこを修正したら別のエラーの内容が
変わったから。
emacsの最新バージョンに入れ替えて、init.elの書き直しもぼちぼちやります。
2017/12/17(日) 16:38:45.77
>>933
そうなんですよ。24.5へのシンボリックリンクを
削除したら22.1?のemacsを読みに行くように
なりました。それでその22だと user-emacs-directory
が定義されていないのでエラーがでました。
2017/12/17(日) 16:41:04.34
なぜ外したauto-save-listがあれば、問題なくemacsが動いていたかと、疑問に思います。
2017/12/17(日) 16:54:22.86
とりあえず
>>854さんに教えていただいたようにしてemacsは動くようになりました。
あとはinit.elを書き換えたり、ディレクトリを移動したり、elispを入れたり
するだけです。
ありがとうございました。
2017/12/17(日) 18:31:03.12
>>938
それは良かった。
念のために確認するけど、テストではなく、本番使用のものは、perfixを/tmpのままにしていないよね?
2017/12/17(日) 20:48:31.46
>>939
してます。どうするのがいいのでしょう?
2017/12/17(日) 22:20:18.48
インストール先ですね。理解しました
2017/12/18(月) 20:55:41.11
ここで昨日、一昨日と教えてもらったものです。
一旦動くようになったのですが、emacswiki?からの読み込みでエラーが
出てたくらいで一旦無事に動くようになりました。
その後、init.elを弄ってそれぞれのelispの順序を変えていると、動かなくなりました。パソコンの中を調べたら2年前のinit.elがあり、それは手を入れていたinit.el
とほとんど同じでした。それにちょこっと手を加えて、今があります。
emacswikiの読み込みも問題なくできるようになりました。
やったことは、/opt/emacs-25.3にemacsをインストールして.bash_profileにemacsのaliasを作って、/opt/emacs-25.3/emacsを読みに行くようにしたこと、/Users/自分の名前(つまりホームディレクトリ)/.emacs.dのinit.elを少し弄ったことです。
それで、ホームディレクトリに移ってからemacsと打つことで起動させるという風で、問題なく動いています。
二年前のinit.elは大竹さんの本だけ
を基本的に見て作ったものです。その時はとても難しく思いました。
今回普通に第二版を読んでいて難しいとは思わなかったですが、設定を変えようと
考えて、今回いろいろしくはくしてたのですが、その時ようやく実は難しいものだ
なと思いました。
いちおう感想だけ。emacsが使えるようになればいいなあとずっと思っています。
(ヘルプが英語だったりして、なかなかとっつきにくいですが。)
いろいろ教えていただきありがとうございました。
2017/12/18(月) 23:08:28.28
ゴミみたいな書き込みだな
2017/12/19(火) 06:07:45.49
ワロス
2017/12/19(火) 06:19:05.06
大竹って誰
946sage
垢版 |
2017/12/19(火) 07:19:49.88
>>942
> ヘルプが英語だったりして、なかなかとっつきにくいですが
日本語訳あるよ
https://ayatakesi.github.io/emacs/24.5/index.html
2017/12/19(火) 15:27:01.94
がんばって
2017/12/19(火) 19:25:10.86
>>946
教えてくれてありがとう。
>>947
ありがとう
949名無しさん@お腹いっぱい。
垢版 |
2017/12/20(水) 13:38:20.24
emacsで別ファイルで指定した文字列に色を付けるパッケージってありますか?
自分が頻繁に誤用する文章パターンを別ファイルに正規表現のリストとして保存しておいて
文章整形中に正規表現に一致する文字パターンを色付けするってことをしたいのです.
2017/12/20(水) 14:21:02.11
highlight-phraseとか…
2017/12/22(金) 10:25:54.62
anything-M-xって以前からemacs起動時にミニバッファの履歴読んで無かったっけか?
2017/12/23(土) 22:09:06.61
iterm2の画面を開いて、emacsを起動させて、文書1を呼び出したとして、
それをさらに新しくひらいたiterm2の画面を開いて、新しい文書2をつくり
そこに、文書1からコピーしたものを文書2にヤンクしたいのですが、
文書2にヤンクしようとすると空だと出ます。
どういうコードをinit.elに書き加えればいいのか教えてください
2017/12/23(土) 22:24:58.43
端末だからどうなんだろうな。GUIだとクリップボードの共有できるけど。
emacsclientつかうとか。
2017/12/23(土) 23:33:04.63
クリップボードの共有はinit.elにコードを書いて、できるようにはなっているんです。
だからcommand+cでコピー、command+vでペーストはできるんですが、
元々の画面のあらわれている部分しか選択できないんです。
だから、画面をさらにずらして、コピーしてペーストをするしかないんです。
コピー元のファイルの画面に映っていないところも全部、C-spaceで選択して
ペーストするほうでyankなりできればとおもうんですが
2017/12/23(土) 23:37:50.29
>>953
ありがとうございます。
https://superuser.com/questions/403402/how-do-i-cut-and-paste-between-different-files-using-emacs
ということで、>>953さんの回答がそのとおりという
ことですね。
ありがとうございます。
2017/12/24(日) 10:12:27.12
>>954
Emacsの話じゃねーだろ
2017/12/24(日) 10:14:33.46
>>952
レジスタ
2017/12/24(日) 11:20:40.33
>>957
レジスタ、今やってみましたが、同じターミナルの中で立ち上げた、emacsのバッファー
同士の間ではレジスタを使ってテキストの挿入はできるのですが、
異なるターミナルを使って立ち上げたemacsのバッファーへのペーストはできないです
959名無しさん@お腹いっぱい。
垢版 |
2017/12/24(日) 11:35:06.26
>>958
それがemacsclientのメリットですよね
https://ayatakesi.github.io/emacs/25.1/emacs-ja.html#Emacs-Server
なぜなら新しいEmacsプロセスが開始されるからです。なぜこれが不便かというと、新たなEmacsプロセスは、既存のEmacsプロセスのバッファー、コマンドヒストリー、その他の情報を共有しないからです
2017/12/24(日) 11:44:07.60
Emacsは必要のない限りGUI版使うべきだと思うよ
CUI環境で動かすと
クリップボードの共有云々の件もそうだし
キーボードだとか表示だとか面倒が多い
961名無しさん@お腹いっぱい。
垢版 |
2017/12/24(日) 11:51:43.01
>>959
×https://ayatakesi.github.io/emacs/25.1/emacs-ja.html#Emacs-Server
↑くそ重い

https://ayatakesi.github.io/emacs/25.2/html/Emacs-Server.html#Emacs-Server
2017/12/24(日) 11:55:44.10
ちなみに26からTCPサーバーもサポートされる
https://ayatakesi.github.io/emacs/26.0.90/html/TCP-Emacs-server.html#TCP-Emacs-server
963名無しさん@お腹いっぱい。
垢版 |
2017/12/24(日) 12:05:21.08
>>958
できるよ
(set-register) で永続化
964名無しさん@お腹いっぱい。
垢版 |
2017/12/24(日) 12:14:26.08
ちなみに端末でのコピーもtmux使えば、
C-b [ space 範囲指定 ret C-b ] でできるし、スクロールバッファも遡れる。

Macならpbcopy, pbpasteも使える。

色々方法あるけどわからない摩訶不思議な事せず素直にGUI使って勉強しろって
2017/12/24(日) 12:35:47.66
C-bってお前のキーバインドか?
tmuxとかscreenだと失敗すると思うよ。考えて見ろよ。
966名無しさん@お腹いっぱい。
垢版 |
2017/12/24(日) 12:42:03.25
>>965
別に失敗してねーな。端末のEmacsでC-bも使えるし。
何が失敗するんだ?

そもそもC-z始め他の適当なprefixはEmacsの方で埋まってる
2017/12/24(日) 12:47:16.92
2つ立ち上げるケースってどういうケースなの
2017/12/24(日) 12:53:25.54
いや、コピペで失敗するんだ。
2017/12/24(日) 12:55:49.77
>>967
そら複数画面で編集したいときでしょ。
セッションを共有するという意味ではemacsclientが一番素直。クラウド時代にはもっといろいろとやりかたがあるんだろうとは思いますが。
2017/12/24(日) 12:57:40.92
tmuxとemacsでクリップボードの共有できればいいけど、できないでしょ。
だから失敗する。でかい領域のコピーで。
971名無しさん@お腹いっぱい。
垢版 |
2017/12/24(日) 13:22:52.86
Macならpbcopy使ってtmuxのバッフアスタックとクリップボードの共有もできるけどなぁ

設定しなくてもtmuxのバッフアコピーでEmacsにもペーストできるし、俺のところは動いてるけどこれ普通じゃないの?
972名無しさん@お腹いっぱい。
垢版 |
2017/12/24(日) 13:30:23.07
>>969
フレームかウインドウ分割でいいと思う。
あと複数Emacsの同時起動はrecentfのトラブルの元。
2017/12/24(日) 13:51:12.78
pbcopy便利そうだな。
端末エミュレータの枠を越えた機能はどうなんだと思わなくもないが。
2017/12/24(日) 13:59:09.05
C-x 5 2
2017/12/24(日) 15:46:11.54
>>972
普通そうだよね
2017/12/24(日) 21:24:25.08
M-x merry-christmas RET
977名無しさん@お腹いっぱい。
垢版 |
2017/12/29(金) 06:46:14.85
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。

グーグル検索⇒『宮本のゴウリエセレレ』

ANQTM6C0LN
978名無しさん@お腹いっぱい。
垢版 |
2017/12/31(日) 18:04:30.44
emacs デフォルトの Python メジャーモードをつかってるんだけど、ある時期を境に、eldoc の挙動が変わった気がする。
以前は引数が表示されていたのに、今では docstring が表示される。

以前の挙動にせっていしたいんだけど、何を調べればいいですか?
2017/12/31(日) 21:54:05.69
あと少しで今年も終わり
今年一年、いろいろ教えてくださってありがとうございました
来年もよろしくお願い申し上げます
レス数が950を超えています。1000を超えると書き込みができなくなります。