のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,883人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    元スレEmacs part 26

    emacs覧 / PC版 /
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

    601 = :

    (buffer-modified-p), buffer-read-only
    を見て,動的にモードラインの色を変更することって可能?
    'mode-line-modified みたいな設定ってある?

    603 = :

    こんなの使っている。

    (defun sdic-describe-word-at-point-or-region (&optional arg)
    "Display the meaning of word at the point or in the region."
    (interactive "P")
    (require 'sdic)
    (let ((func (when arg (sdic-select-search-function)))
    (word (or (and mark-active
    (buffer-substring-no-properties
    (region-beginning) (region-end)))
    (sdic-read-from-minibuffer nil "SDIC"))))
    (sdic-describe-word word func)))

    604 = :

    >>601
    (setq-default mode-line-format
    (append
    mode-line-format
    '((:eval (set-face-background 'mode-line (if (buffer-modified-p) "red" "green"))))))
    とか書いてみたけど、どんなものか。

    605 = :

    >>604
    Thx m(_ _)m
    そうか、(append mode-line-format '(hogehoge
    で良かったんやね。
    おいらはは mode-line-format をそのままコピーして、さっきやってた orz
    もっと elisp を勉強せねばー。

    606 = :

    ところで、なんで Emacs Lisp は EL じゃなくて Elisp と略されるんだろう。
    公式には Elisp という表現は避けられてるし
    EL という名称は一般化してないし。Emacs Lisp と書くしかない時とかなんか微妙に困る。

    607 = :

    >>605
    >>604だけど、
    (append
    '((:eval (set-face-background 'mode-line (if (buffer-modified-p) "red" "green"))))
    mode-line-format))
    のほうが良かったかも。適当に作ったものなので好きなように変えてください。

    608 = :

    :evalってどんなタイミングで評価されてるんだろうか。
    毎秒数千回とか評価されるわけもないだろうけど、
    毎秒一回って事もない気がする。

    609 = :

    >>608
    interactive にバッファが編集された場合か (force-modeline-update) された場合じゃないの?

    610 = :

    mode-line-format とかに :eval な要素があったら、
    それが何に反応するかを分析してるってこと?
    あるいは、バッファの状態によらずに
    たとえばprocessの状態を反映するようなものが
    :eval に登録されていても、
    その条件とは無関係に、とりあえずバッファが編集された
    (interactiveな操作があった) 時に評価されるの?

    611 = :

    >>610
    infoくらい嫁よ

    612 = :

    >>606
    なんで困るの?

    613 = :

    >Allegedly optional lexical scoping is coming after Emacs 23 is
    >released. (according to emacs-devel) Once it’s in place, adding
    >coroutines will be feasible, which addresses the “single-threading
    >sucks” argument that’s surprisingly absent on this page. Should also
    >make closures possible.
    でEmacs23のリリースはいつになるんだ?って話だよな

    614 = :

    ここまでいったけど…,一つ問題点があった.
    初期フレームのみにしか反映されず,
    新規フレームのバッファー変更に対応してくれない.
    それどころか,初期フレームの mode-line の色を
    そのまま新規フレームにも反映してしまう.
    どうにかならないだろうか?

    (setq-default mode-line-format
        (append
         '((:eval
            (let ((modifd (buffer-modified-p))
                  (rdonly buffer-read-only))
              (set-face-background 'mode-line
                   (cond
                    ((and (not modifd) (not rdonly)) "grey75") ;; "--"
                    ((and modifd (not rdonly)) "orange red")   ;; "**"
                    ((and (not modifd) rdonly) "grey75")       ;; "%"
                    ((and modifd rdonly) "orange red")         ;; "##"
                    )))))
         mode-line-format))

    615 = :

    > どうにかならないだろうか?
    各バッファーでそれぞれ色が変わってくれないだろうか?
    ということです.m(_ _)m

    616 = :

    >>615
    mode-line の background-color をいじるんじゃなくて、mode-line-format が
    返す文字列に background-color の property を付加するべきじゃ?

    617 = :

    起動時に自動的にviper-modeに移行する方法は無いでしょうか?
    vimを使い慣れているのですがEmacsの素晴らしい多機能性や
    高度なインデントはプログラミングには必要不可欠です。
    そのためvimのキーバインドでEmacsの機能を活用できるViper-modeで起動できる
    方法が有ればよろしくお願いします。

    618 = :

    viper-mode起動した時に自動的にやるかどうか質問が出るはずだけど?
    viper-modeだけじゃvimの機能完全に網羅してないよ。
    viの機能+emacsの機能は使える。

    vimのvisual mode的な操作がしたいなら
    transient-modeとか利用して自分で作る必要があるね。

    619 = :

    abbrev モードに入る時のフック 'pre-abbrev-expand-hook に 関数 hoge を加えるという設定を
    ローカルバッファ固有にしたいのですが
    make-local-variable には -hook とつくものは設定してはダメと書いてありました。

    (add-hook 'text-mode-hook (lambda ()
    ; (make-local-variable 'pre-abbrev-expand-hook)
    (add-hook 'pre-abbrev-expand-hook 'hoge)))

    これだとすべてのバッファで hoge が動いてしまいます。
    どのようにしたらよいでしょうか。
    お知恵をお貸しください。

    620 = :

    フックの中でフラグ変数を見てhogeを実行するかどうか考えるようにして、
    そのフラグをbuffer-localでも何にでもすりゃいいじゃん?

    621 = :

    >>619
    (add-hook 'text-mode-hook
    (lambda ()
    ;; Do not use `make-local-variable' to make a hook variable
    ;; buffer-local. Instead, use `add-hook' and specify t for the
    ;; LOCAL argument.
    ;; (make-local-variable 'pre-abbrev-expand-hook)
    (add-hook 'pre-abbrev-expand-hook 'hoge nil t)))

    かな?

    622 = :

    >>617
    (info "(viper)Loading Viper") に書いてある。
    下の2行を~/.emacsに書く。
    --
    (setq viper-mode t)
    (require 'viper)
    --

    >>618
    最初に聞かれるのは、
    viper-inhibit-startup-messageとviper-expert-level
    じゃないか?


    vim っぽくしたいなら、

    http://www.emacswiki.org/cgi-bin/wiki/vimpulse.el
    http://www.geocities.jp/emacsjjjj/viper/

    ここいらへんを、参考に。

    623 = :

    >>620-621
    お手数をおかけして申し訳ありません。

    add-hook の引数の意味をきちんと理解できていませんでした。
    >>621 の式で期待通りの動作をするようになりました。

    どうもありがとうございました。

    624 = :

    >>470
    scim-bridge.el version 0.7.0 リリース

    遅くなりましたが、カーソルの色を変えられるようにしました。

    (setq scim-cursor-color "red")

    これで、SCIMがオンの時にカーソル色が赤になります。オフ時の色も指定
    したい場合はコンスセルで指定します。例えば

    (setq scim-cursor-color '("red" . "blue"))

    とすると、オンで赤、オフで青になります。

    GUIセットアップユーティリティーでSCIMの設定を変更すると、実際の状態と
    カーソル色が合わなくなりますが、気にせず使っていればそのうちに直ります。

    626 = :

    >>614
    mode-line-format の中の :eval は表示している全てのバッファについて評価
    されるから、選択しているウインドウとは関係なく最後に評価したバッファで
    色が決まっちゃいますよ。

    (add-hook 'post-command-hook
    (lambda ()
    (with-current-buffer (window-buffer (selected-window))
    (let ((modifd (buffer-modified-p))
    (rdonly buffer-read-only))
    (set-face-background 'mode-line
    (cond
    ((and (not modifd) (not rdonly)) "grey75") ;; "--"
    ((and modifd (not rdonly)) "orange red") ;; "**"
    ((and (not modifd) rdonly) "grey75") ;; "%"
    ((and modifd rdonly) "orange red") ;; "##"
    ))))))

    でいいと思うけど。

    627 = :

    あっ with-current-buffer は要らないか。

    (add-hook 'post-command-hook
    (lambda ()
    (let ((modifd (buffer-modified-p))
    (rdonly buffer-read-only))
    (set-face-background 'mode-line
    (cond
    ((and (not modifd) (not rdonly)) "grey75") ;; "--"
    ((and modifd (not rdonly)) "orange red") ;; "**"
    ((and (not modifd) rdonly) "grey75") ;; "%"
    ((and modifd rdonly) "orange red") ;; "##"
    )))))

    これでいけますね。

    629 = :

    ~/

    630 = :

    jdeeについての質問です。
    Meadow3(r4242)で、コンパイルするとjavacの出力メッセージが化けて出てきます。

    http://www.02.246.ne.jp/~torutk/jdee/jdee.html#doc1_id654

    (setq bsh-vm-args "Duser.language=en")
    を設定しても現象は変わりません。何か設定が足りないのでしょうか?

    631 = :

    >>624
    久々のVer.upですね。さっそく使わせていただいております。
    ありがとうございます。
    カーソルの色の変更、きちんとできています。

    633 = :

    違った、こうかな?
    (setq bsh-vm-args '("-Duser.language=en"))

    634 = :

    >>629
    Cドライブのしたってこと?

    635 = :

    >>627
    irie 氏、激しく感謝です m(_ _)m
    そして、scim-bridge.el version 0.7.0 release、お疲れさまです。
    こちらも大変便利に利用しております。

    636 = :

    >>634
    マニュアルを読むといいよ。

    (info "(emacs)Init File") ;*scratch*バッファで評価

    http://www.bookshelf.jp/texi/emacs-man/21-3/jp/emacs_34.html#SEC497

    637 = :

    >>633
    > 違った、こうかな?
    > (setq bsh-vm-args '("-Duser.language=en"))

    あ、そうでした。すみません。
    しかし、check styleだと文字化けしてしまいます。回避方法ありますかねぇ。

    638 = :

    >>637
    jdeeを使ったことがないのでよくわかんないけど、

    (add-hook 'java-mode-hook (lambda() (setenv "LC_ALL" "en")))

    とか?(ttp://sakito.jp/moin/moin.cgi/JDEE より)

    641 = :

    >>638
    > >>637
    > jdeeを使ったことがないのでよくわかんないけど、
    >
    > (add-hook 'java-mode-hook (lambda() (setenv "LC_ALL" "en")))
    >
    > とか?(ttp://sakito.jp/moin/moin.cgi/JDEE より)

    それもやったんですが、駄目でした。うーむ。

    643 = :

    mcompleteを使っているとcolor-themeで設定したテーマによっては補完文字が
    見づらくなってしまいます。
    (copy-face 'highlight 'mcomplete-prefix-method-fixed-part-face)
    (copy-face 'highlight 'mcomplete-prefix-method-alternative-part-face)
    を評価するとちょうといい感じになるのですが、.emacs.elに書くだけでは駄目
    みたいです。***-hooksとかに引っかける必要があるんでしょうか。
    どなたかご教示いただけると助かります。

    644 = :

    trampを使って接続先のファイルをいじろうとしたとき
    そのファイルがsvn管理下にあると、つまり.svnが同ディレクトリにあるとき
    Couldn't parse output from `svn status -v'
    といわれて開けません、もう一度開こうとすると開くことはできるのですが
    保存しようとするとやっぱり
    Couldn't parse output from `svn status -v'
    といわれて保存できません

    645 = :

    >>644
    そりゃtrampじゃなくてvcがエラー出してるんだろ。
    まぁ、vcの挙動は確かに変だよね。

    646 = :

    >>643
    「書くだけでも駄目」ってのは、
    書いても書く前と変わらないのか、
    あるいは結果がちょっと違うのか、どっちだろう。

    (require 'mcomplete)
    (set-face-foreground 'mcomplete-prefix-method-fixed-part-face "orange")
    (set-face-foreground 'mcomplete-prefix-method-alternative-part-face "orange")
    (turn-on-mcomplete-mode)

    この順番でどう?

    647 = :

    >>646
    ありがとうございます。
    「書くだけでは駄目」というのは.emacs.elに書く前と結果が変わらない
    という意味でした。>>646のコードでうまく表示が変わったのでとりあえずは
    これを使ってみます。.emacs.elにcopy-faceを書いても順番関係なく無効
    みたいです。

    648 = :

    >>636
    どこに.emacsおけばいいかわかったわ
    ありがとう
    ソフト起動しただけでは.emacsできないのね

    650 = :

    >>645
    vcの動作を止められないですか?
    接続先の特定ディレクトリだけ


    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / emacs一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について