元スレEmacs Part 40
emacs覧 / PC版 /みんなの評価 :
701 = :
ネタがねえ
*.elを保存する時に自動的にバイトコンパイルするやつ
作りかけのとかコンパイルされてもしかたないので元々 *.elc がある場合だけコンパイルする。
(add-hook 'emacs-lisp-mode-hook
(lambda ()
(add-hook 'after-save-hook
(lambda ()
"必要ならバイトコンパイルする. elc が無い場合はコンパイルしない."
(require 'bytecomp nil t)
(let* ((file (buffer-file-name))
(dest (byte-compile-dest-file file)))
(when (and (file-exists-p dest)
(file-writable-p dest)
(file-newer-than-file-p file dest))
(byte-compile-file file))))
nil t))) ; buffer local hook
703 = :
ネタがない、か。それでは初心者がネタを投下。
emacsの正規表現は使いにくすぎる。書くときはいいけど後から読めない。rxを使うほどではないけど、Gaucheの正規表現リテラルが羨しい。
気になるのは二つ。
どうしてこんなことになったのか、歴史的なこと。
今、正規表現リテラルに関してまじめに考えている人はいるのか。
704 = :
正規表現リテラルってそんなに便利なのかな?
Gaucheでは型の扱い方がエレガントだからよさげに思うんじゃないだろうか。
706 = :
バックスラッシュを解釈しない文字列が書ければいいんだよな。
今時の言語にはあって当たり前だが。。
707 = :
そんなものを正規表現で書くのが間違いなんじゃない?
708 = :
どう考えても、正規表現記号にエスケープを要求することと
そのエスケープ用文字が文字列のエスケープと被ってることが間違いじゃね
まあ環境が間違ってると言ってもそれを踏まえてうまくやるしかないんだけども
709 = :
あれは設計ミスとしか思えないよねえ。
コードに落としこむ時とミニバッファとかに入力する時でまた変わるってのも輪をかけておかしい。
何がメタ文字なのかってちゃんと把握すれば一応直交してはいるんだけどさ。
711 = :
>>703
書くときもよくないw
実は自分も知りたいと思ってたけど、初心者すぎるかなと思って聞けなかった・・・
まだ解決してなかったのかー。
Perlの正規表現で置換できるelispとか無いのかな?
713 = :
やっぱり皆不満なのね。「それくらい脳をhackできなきゃemacsianとして云々」とか言うのかと思った。
>>711
M-x re-builder
改行含めて全ての文字にマッチする表現がぱっと書けないのもどうかと思うよ。
いまだになぜかうまく動かないやつあるし。
715 = :
re-builderで作った正規表現をそのままoccurに入れて動かねーと
頭を抱えたのはいい思い出
717 = :
正規表現で何かをパーズしてる人達がオールドタイプってことは分かる。
718 = :
ニュータイプはどうやってパーすするの?
719 = :
基本に立ち返って字句解析と構文解析するんじゃない?
720 = :
Javaなんかは1.4になって初めて正規表現をサポートした。
むしろこれからの技術でしょ。>正規表現
721 = :
これからもなにも・・・・
計算機科学黎明期のそれこそ字句解析構文解析とほぼ同時に生まれた概念だぞ
723 = :
>>721
それが後々まで使われ、新しい環境でも望まれている。
まだまだこれから、と言いたいわけだが。
つーかUNIX板で正規表現嫌いと聞くとは思わんかったよ。
724 = :
>>723
> それが後々まで使われ、新しい環境でも望まれている。
> まだまだこれから、と言いたいわけだが。
正規表現使い過ぎる人ってCOBOLerと同じ臭いがするんだよね。
725 = :
しったか君はとりあえずマ板に帰ろうか
726 = :
>>723
あんなメンテナンス性の悪いもの嫌って当然。
727 = :
まーまー。
Emacsの正規表現でのエスケープだらけへの愚痴大会を
正規表現そのものの悪口大会と勘違いした夏厨くんが
勇んで参加してしまっただけ。
よくある話だ。
728 = :
正規表現は利便性の高いものであることに疑問はないけど、
emacsで正規表現書く時はすごくストレスが溜まることはあるな。
バックスラッシュ4つ書くのが普通となるとやっぱり嫌だ。
729 = :
>>728
暫く書かないでいるとどれに何個エスケープしなきゃいけないか忘れるよね
730 = :
バックスラッシュが大量に入っちゃうのは何らかのパーズ処理だと思うが。
そういう処理に正規表現使わないのはそろそろ常識になってほしい。
731 = :
なにいってんだこいつ () 使うだけで \\(\\) なんだぞ?
732 = :
普通のバックスラッシュにマッチさせるだけで"\\\\"なんだよな。
733 = :
なんとかなんないもんなのかねぇ。
rx とか使ってるの見たことないわ。
734 = :
>>731
それだけでそこまで読みづらいのかな?いつごろからかハイライトされるよう
になってあんまり不満がなくなっちゃった
正規表現のバックスラッシュが一番数えづらいの正規表現の文字列リテラルにダ
ブクオートとか入ってきたときのような気がする。次に >>732。
そういうのにマッチさせる正規表現は書かなければいいんじゃないかな。
735 = :
ついついrx使ってしまい糞elisp書くなゴルァって怒られてた
736 = :
>>734
君がそう思うならそれはそれで幸せなことだ。
別にみんながみんな使い辛いって思って欲しいわけじゃないし。
少なくとも俺と俺の周りの何人かは使ってて不便に思ってるってだけの話。
737 = :
>>736
くれぐれも巨大な正規表現は書かないように。馬鹿に見えるからね。
738 = :
Emacsはなんで正規表現リテラル導入しなかったんだろね。
長いの書く時まじでしんどいわ。
だいたい列挙するだけで \\(\\(\\(public\\|protected\\|private\\|const\\|...とか
あほやろwwww
740 = :
どうせまたstallmanの趣味でリテラルの導入考えなかったんだろ。
抜けたことでダイナミックリンクも解禁されたし正規表現リテラルもそのうち実装されるんじゃねえの。
743 = :
書かなくていいなら幸せだ。書かなきゃいけないんだよ。
744 = :
なんでわざわざ名前欄にレス番入れてんだ・・・?
こっから連レスする予定?
745 = :
すまん、なぜかわからん。自分で書いた覚えがない。
747 = :
軽くぐぐっても出てこないんだけどどこにあるの?
regexp-optの間違いじゃないよね?
748 = :
http://lists.gnu.org/archive/html/gnu-emacs-sources/2005-11/msg00004.html
これかな?
749 = :
>>748
これ面白いね。正規表現っぽい文字列コンテキストのとこに入ると
\\(\ab\(\\(cd\\)\\)\\) がハイライト付きで \1(ab\2(\3(cd\3)\2)\1) みたいに表示される
正規表現のグルーピングになってない()はハイライトされないから確かに一目瞭然だわ。
750 = :
質問です。
Emacsを使うとマウスまで手を伸ばさなくてもほとんどの作業ができるようですが、
本当にそうなのでしょうか?
例えばカーソルを合わせたりクリックするような作業も全てキーボードで行う事は可能なのですか?
みんなの評価 :
類似してるかもしれないスレッド
- Emacs Part 46 (984) - [92%] - 2014/12/24 14:15
- Emacs Part 42 (1001) - [92%] - 2013/6/9 5:15 △
- Emacs Part 50 (978) - [92%] - 2017/12/29 18:45
- Emacs Part 49 (974) - [92%] - 2016/12/7 9:45
- Emacs Part 48 (997) - [92%] - 2015/12/9 15:15
- Emacs Part 47 (995) - [92%] - 2015/4/19 13:01
- Emacs Part 41 (1001) - [92%] - 2012/12/24 4:15
- Emacs Part 45 (1001) - [92%] - 2014/6/23 9:45
- Emacs Part 44 (1001) - [92%] - 2014/2/8 8:01 △
- Emacs Part 43 (1001) - [92%] - 2013/12/14 11:30
- Emacs Part 32 (1001) - [84%] - 2009/12/20 2:04 ○
- Emacs Part 33 (1001) - [84%] - 2010/3/9 20:01 ○
- Emacs Part 53 (989) - [84%] - 2022/12/5 12:45
- Emacs Part 54 (97) - [84%] - 2023/1/25 17:15
トップメニューへ / →のくす牧場書庫について