私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレEmacs Part 39
emacs スレッド一覧へ / emacs とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
>>539
別解っぽいものを書いてみた。
call-interactively は使わないほうが行儀が良いような気がする。
>>544
変だったら指摘してくれると大助かり。
(defun somefunc (str)
(interactive "sinput: ")
(if (save-excursion
(goto-char (point-min))
(save-match-data
(search-forward str nil 'noerror)))
(call-interactively 'somefunc)
(insert str)))
ただし call-interactively は使わないほうが行儀が良い気がする。
別解っぽいものを書いてみた。
call-interactively は使わないほうが行儀が良いような気がする。
>>544
変だったら指摘してくれると大助かり。
(defun somefunc (str)
(interactive "sinput: ")
(if (save-excursion
(goto-char (point-min))
(save-match-data
(search-forward str nil 'noerror)))
(call-interactively 'somefunc)
(insert str)))
ただし call-interactively は使わないほうが行儀が良い気がする。
sdic が独自のポップアップ表示してるせいで popwin 管理下に置けなくてストレスMAX
>>553
ほれ
;; popwin 管理下におく
(add-to-list 'popwin:special-display-config `(,sdic-buffer-name))
;; sdic-display-buffer 書き換え
(defadvice sdic-display-buffer (around sdic-display-buffer-normalize activate)
"sdic のバッファ表示を普通にする。"
(let ((p (or (ad-get-arg 0)
(point))))
(and sdic-warning-hidden-entry
(> p (point-min))
(message "この前にもエントリがあります。"))
(goto-char p))
(display-buffer (get-buffer sdic-buffer-name)))
ほれ
;; popwin 管理下におく
(add-to-list 'popwin:special-display-config `(,sdic-buffer-name))
;; sdic-display-buffer 書き換え
(defadvice sdic-display-buffer (around sdic-display-buffer-normalize activate)
"sdic のバッファ表示を普通にする。"
(let ((p (or (ad-get-arg 0)
(point))))
(and sdic-warning-hidden-entry
(> p (point-min))
(message "この前にもエントリがあります。"))
(goto-char p))
(display-buffer (get-buffer sdic-buffer-name)))
>>554
ありがとでも sdic-describe-word-at-point がちょっと変な気がする
ありがとでも sdic-describe-word-at-point がちょっと変な気がする
>>555
ほれ。あとちょっと挙動違ってた部分もついでになおした。
;; sdic-display-buffer 書き換え
(defadvice sdic-display-buffer (around sdic-display-buffer-normalize activate)
"sdic のバッファ表示を普通にする。"
(setq ad-return-value (buffer-size))
(let ((p (or (ad-get-arg 0)
(point))))
(and sdic-warning-hidden-entry
(> p (point-min))
(message "この前にもエントリがあります。"))
(goto-char p)
(display-buffer (get-buffer sdic-buffer-name))
(set-window-start (get-buffer-window sdic-buffer-name) p)))
ほれ。あとちょっと挙動違ってた部分もついでになおした。
;; sdic-display-buffer 書き換え
(defadvice sdic-display-buffer (around sdic-display-buffer-normalize activate)
"sdic のバッファ表示を普通にする。"
(setq ad-return-value (buffer-size))
(let ((p (or (ad-get-arg 0)
(point))))
(and sdic-warning-hidden-entry
(> p (point-min))
(message "この前にもエントリがあります。"))
(goto-char p)
(display-buffer (get-buffer sdic-buffer-name))
(set-window-start (get-buffer-window sdic-buffer-name) p)))
追加。閉じる時の変なチラチラも消える。
(defadvice sdic-other-window (around sdic-other-normalize activate)
"sdic のバッファ移動を普通にする。"
(other-window 1))
(defadvice sdic-close-window (around sdic-close-normalize activate)
"sdic のバッファクローズを普通にする。"
(bury-buffer sdic-buffer-name))
(defadvice sdic-other-window (around sdic-other-normalize activate)
"sdic のバッファ移動を普通にする。"
(other-window 1))
(defadvice sdic-close-window (around sdic-close-normalize activate)
"sdic のバッファクローズを普通にする。"
(bury-buffer sdic-buffer-name))
>>554
>(add-to-list 'popwin:special-display-config `(,sdic-buffer-name))
を
(add-to-list 'popwin:special-display-config `(,sdic-buffer-name ,sdic-window-height))
に直したら大分良くなった
>(add-to-list 'popwin:special-display-config `(,sdic-buffer-name))
を
(add-to-list 'popwin:special-display-config `(,sdic-buffer-name ,sdic-window-height))
に直したら大分良くなった
ミスった
(add-to-list 'popwin:special-display-config
`(,sdic-buffer-name :height ,sdic-window-height))
(add-to-list 'popwin:special-display-config
`(,sdic-buffer-name :height ,sdic-window-height))
>>548
ありがとうございます。確認してみました。
(define-generic-mode 'my-mode
'(";")
こういう書き出しではじまるgeneric-modeで
;の出力される位置は行頭行末とも適切だとわかったのですがただ行頭が;;になりません
普通generic-modeでこう設定すると行頭は;;となるのでしょうか
ありがとうございます。確認してみました。
(define-generic-mode 'my-mode
'(";")
こういう書き出しではじまるgeneric-modeで
;の出力される位置は行頭行末とも適切だとわかったのですがただ行頭が;;になりません
普通generic-modeでこう設定すると行頭は;;となるのでしょうか
>>562
emacs-lisp-mode みてみたら、どうやら
comment-add って変数で ; の数を制御しているみたい。
モードのセットアップしてるところで
(setq (make-local-variable 'comment-add) 1) ってやってみて。
emacs-lisp-mode みてみたら、どうやら
comment-add って変数で ; の数を制御しているみたい。
モードのセットアップしてるところで
(setq (make-local-variable 'comment-add) 1) ってやってみて。
もしかして eval-after-load の中のフォームってバイトコンパイルされなかったりする?
emacs から emacs を立ち上げれば
elisp だけでの並列プログラミングが実現出来るんじゃないか?
マルチスレッドじゃなくマルチプロセスだけど。
elisp だけでの並列プログラミングが実現出来るんじゃないか?
マルチスレッドじゃなくマルチプロセスだけど。
replace-regexpについて質問します
このようなテキストがあるところで
akasatana
hamayarawa
ikisitini
「元のテキスト 元のテキスト」のようにテキストを複製するかのような処理を
正規表現の置換で行いたいのですがうまくいきません
置換対象の文字列検索はre-builderでは大丈夫でした
replace-regexp [ret]
\\(.+\\) [ret]
\\1 \\1 [ret]
何を修正すればよいのでしょうか
このようなテキストがあるところで
akasatana
hamayarawa
ikisitini
「元のテキスト 元のテキスト」のようにテキストを複製するかのような処理を
正規表現の置換で行いたいのですがうまくいきません
置換対象の文字列検索はre-builderでは大丈夫でした
replace-regexp [ret]
\\(.+\\) [ret]
\\1 \\1 [ret]
何を修正すればよいのでしょうか
ELPAの作者がemacsをcommon lispで書き直そうとしているみたい
The Cliffs of Inanity ? Emacs and Common Lisphttp://tromey.com/blog/?p=709
そうなると長い目で見ればcommon lispを知っておいた方がよさそう
The Cliffs of Inanity ? Emacs and Common Lisphttp://tromey.com/blog/?p=709
そうなると長い目で見ればcommon lispを知っておいた方がよさそう
EmacsをCommon Lispでって・・・・
10年前に Erik Naggum が言ってたのと同じことやん。
歴史は繰り返す。
10年前に Erik Naggum が言ってたのと同じことやん。
歴史は繰り返す。
>>588
このあたりの話が関係するか。emacsをcommon lispで、っていうのは真っ正面から議論されていたのかな?
Island Life - 「Cで書くコードの方がCommon Lispで書くより速いって人がいたら、それは彼のCの技量が高すぎるってことだね。」
http://blog.practical-scheme.net/shiro/20100620a-lisp-speed
このあたりの話が関係するか。emacsをcommon lispで、っていうのは真っ正面から議論されていたのかな?
Island Life - 「Cで書くコードの方がCommon Lispで書くより速いって人がいたら、それは彼のCの技量が高すぎるってことだね。」
http://blog.practical-scheme.net/shiro/20100620a-lisp-speed
guile emacs の方がいいよ
それはそうと emacs 24で`image-library-alist' is renamed to `dynamic-library-alist' ってなってるの見て
ああもう本当にストールマンいなくなったんだなと実感した
それはそうと emacs 24で`image-library-alist' is renamed to `dynamic-library-alist' ってなってるの見て
ああもう本当にストールマンいなくなったんだなと実感した
>>584
正規表現リテラルでもありゃあいいのにな。
正規表現リテラルでもありゃあいいのにな。
define-generic-modeの質問をした者ですが関連する質問をします
test_func {
test
}
のように{が行末に来たときは次の行をスペース2つ分(かタブ1つ分)右にシフトさせて
}が行頭に来たときには左にシフトさせる設定はdefine-generic-mode向けに何かありますか
(上の例では全角スペースを使っています)
単体のemacsでは設定できずyasnippetのようなものを併用しなければならないでしょうか
test_func {
test
}
のように{が行末に来たときは次の行をスペース2つ分(かタブ1つ分)右にシフトさせて
}が行頭に来たときには左にシフトさせる設定はdefine-generic-mode向けに何かありますか
(上の例では全角スペースを使っています)
単体のemacsでは設定できずyasnippetのようなものを併用しなければならないでしょうか
>>597
凝ったことしたくなったら generic-mode 使わないで素でmajor-mode作ってもいいような気もするけど
{ を入力したときに勝手に整形されるようにするのか、
改行したときに勝手にそうなるようにしたいのか、
C-i だの TAB だの入力して indent したときにそうしたいのかによって微妙に入り口は異なると思うけど
基本的には自力で整形処理を書かなきゃいけないと思うよ。
c-mode の c-indent-line の辺り読んで頑張れ
凝ったことしたくなったら generic-mode 使わないで素でmajor-mode作ってもいいような気もするけど
{ を入力したときに勝手に整形されるようにするのか、
改行したときに勝手にそうなるようにしたいのか、
C-i だの TAB だの入力して indent したときにそうしたいのかによって微妙に入り口は異なると思うけど
基本的には自力で整形処理を書かなきゃいけないと思うよ。
c-mode の c-indent-line の辺り読んで頑張れ
indent-line-function に前の行の { の位置をみてインデント位置を調節する関数を設定する。
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / emacs スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- Emacs Part 34 (1001) - [92%] - 2010/6/21 19:45 ○
- Emacs Part 35 (1001) - [92%] - 2010/9/19 17:01
- Emacs Part 36 (1001) - [92%] - 2011/3/1 5:02
- Emacs Part 37 (1001) - [92%] - 2011/6/20 19:47
- Emacs Part 38 (1001) - [92%] - 2011/11/29 0:01
- Emacs Part 49 (974) - [92%] - 2016/12/7 9:45
- Emacs Part 33 (1001) - [92%] - 2010/3/9 20:01 ○
- Emacs Part 32 (1001) - [92%] - 2009/12/20 2:04 ○
- Emacs Part 31 (1001) - [92%] - 2009/10/23 10:31 ○
- Emacs Part 40 (1001) - [84%] - 2012/9/7 0:30
- Emacs Part 53 (989) - [84%] - 2022/12/5 12:45
- Emacs Part 41 (1001) - [84%] - 2012/12/24 4:15
- Emacs Part 54 (97) - [84%] - 2023/1/25 17:15
- Emacs Part 42 (1001) - [84%] - 2013/6/9 5:15 △
トップメニューへ / →のくす牧場書庫について