■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 最新50



レス数が1000を超えています。残念ながら全部は表示しません。

Emacs part5

1 :名無しさん@お腹いっぱい。 :02/05/19 00:13
各種 Emacs 関連はこちらで。

Emacs
http://cocoa.2ch.net/unix/kako/967/967450973.html
Emacs part2
http://pc.2ch.net/unix/kako/1001/10010/1001087615.html
Emacs part3
http://pc.2ch.net/test/read.cgi/unix/1007618266/
Emacs part4
http://pc.2ch.net/test/read.cgi/unix/1013390142/
関連リンク
http://www.jpl.org/elips/BUGS-ja.html


801 :名無しさん@お腹いっぱい。 :02/08/25 19:14
>>800 なるほど。

○ プロセスの環境変数は起動時に process-environment にリストとして取り込まれる。
○ Emacs 内部では process-environment が参照・変更の対象になる。
○ 子プロセス起動時に process-environment がプロセスの環境変数に書き戻される。

華麗に 800 ゲットおめでとうございます。

802 :名無しさん@お腹いっぱい。 :02/08/26 02:16
XEmacs って起動直後に何かキー入力するとフレームがちょっと大きくなりま
すよね?あれで画面からはみだすくらいの大きさになってしまうのが面倒なん
ですがどう設定したらいいんですか?

803 :名無しさん@お腹いっぱい。 :02/08/26 09:42
しつもーん。
`1' とかを 10個入力したいときってどうしてますか。
C-u 10 C-q 1 RET
とかやっても `^A' が入力されるだけで `1' が入力できないっす。

804 :名無しさん@お腹いっぱい。 :02/08/26 09:52
>>803
C-u 10 C-u 1

805 :803 :02/08/26 11:18
>>804
( ´_ゝ`)アリガト-

806 :名無しさん@お腹いっぱい。 :02/08/26 12:11
今は(setq browse-url-netscape-program "mozilla")を使っています。

コマンドラインから

% mozilla -remote "openurl(http://www.mozilla.org, new-tab)"

これでURLを新しいTABで開けるのはわかったのですが、EmacsからURLを
タブで開くのに、どう.emacsに書けばいいのかがわかりません。
教えてください。

807 :名無しさん@お腹いっぱい。 :02/08/26 13:26
>>806
(call-process "mozilla" nil nil nil "-remote" "openurl(http://www.mozilla.org, new-tab)")
かな?

808 :806 :02/08/26 13:39
>>807
すいません。説明がわるかったです。
navi2chなどでURLを中クリックしたときにブラウザで読み込むのに
mozillaの新しいタブで読み込みたいのです。
URLの部分は http://www.mozilla.org ではなくその都度違うのです。


809 :名無しさん@お腹いっぱい。 :02/08/26 13:47
>>808
browse-url.elのbrowse-url-netscapeを書き換えれ

810 :806 :02/08/26 13:52
>>809
僕には無理のようです。
ありがとうございました。

811 :807 :02/08/26 14:22
>>806
ごめんなさい、かんちがい。

関数書き換えないとダメっぽいね。
http://taiyaki.org/tmp/elisp/browse-url-mozilla.el
に置いときました。

あんま検証してないんで、動かなかったらおせーて

812 :807 :02/08/26 14:28
>>811
追記
(setq browse-url-browser-function 'browse-url-mozilla)
で netscape から mozilla に変えてね。


813 :806 :02/08/26 14:49
>>812
browse-url-mozilla.el の (setq browse-url-new-window-flag 'tab)の
コメントアウトを外してload するようにしたら、新しいTABで開くように
なりました。

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


814 :名無しさん@お腹いっぱい。 :02/08/26 17:15
Emacs21のbrowse-url-mozillaって NEW-WINDOW が nil の時、バグる?

--- browse-url.el~ 2002-08-26 16:57:27.000000000 +0900
+++ browse-url.el 2002-08-26 17:15:00.000000000 +0900
@@ -849,10 +849,10 @@
browse-url-mozilla-program
(append
browse-url-mozilla-arguments
- (list "-remote")
- (list "openurl("
- url
- (if new-window ",new-window)" ")"))))))
+ (list "-remote"
+ (concat "openurl("
+ url
+ (if new-window ",new-window)" ")")))))))
(set-process-sentinel process
`(lambda (process change)
(browse-url-mozilla-sentinel process ,url)))))


815 :名無しさん@お腹いっぱい。 :02/08/26 21:46
emacs21で使っていなかったscroll-barを右に表示してみたんだが
scroll-barの右にも空白の部分ができてしまって不格好。
やっぱscroll-barはいらない。

816 :名無しさん@お腹いっぱい。 :02/08/27 03:55
C-p, C-n で、物理行単位で移動するコードってなかったっけ?
いろいろ検索してみてるのですが
誰かもってたら貼ってもらえませんか?

817 :816 :02/08/27 04:02
googleで「論理行 emacs」ったら見つかりますた。失礼しますた。

http://www.taiyaki.org/elisp/physical-line/

818 :名無しさん@お腹いっぱい。 :02/08/27 04:03
>>816
小松さんのPL-modeね。サイトは復旧したみたい。
http://www.taiyaki.org/elisp/physical-line/


819 :818 :02/08/27 04:04
チィッ

820 :名無しさん@お腹いっぱい。 :02/08/27 05:50
>>819
まあまあ。あなたの親切は漏れの心に永遠に刻まれますた。
いや、>>816じゃないけどね(w

821 :名無しさん@お腹いっぱい。 :02/08/27 17:07
emacs21を --with-x-toolkit=gtk で makeできるようにしたら
神って読んでくれますか?

822 :名無しさん@お腹いっぱい。 :02/08/27 18:06
いあ、別に

823 :名無しさん@お腹いっぱい。 :02/08/27 23:32
Gnu Emacs21で JavaScript用の
http://member.nifty.ne.jp/masarl/article/js-oop/javascript-mode.el
というものを見付けたのですが、.eamcsの書き方がわかりません。
load pathにファイルを入れて、

(require 'javascript-mode)

(load javascript-mode)

など、知っている知識全開で書いてみたのですが、起動時に
(バイトコンパイルしています)

An error has occurred while loading `/home/kose/.emacs.elc':

Symbol's value as variable is void: javascript

と怒られてしまいます。
どう書けばいいのか教えてください。


824 :名無しさん@お腹いっぱい。 :02/08/28 01:04
>>823
(load "javascript-mode") は?

825 :名無しさん@お腹いっぱい。 :02/08/28 01:07
>>824
それでOKでした。ありがトン。


826 :807 :02/08/28 01:09
>> 823
.emacs には
(load "javascript-mode")
だけを書けばいいじゃないかな?


827 :816 :02/08/28 02:06
physical-line-mode いいソフトなのに
日本語しかないのがもったいないなあ…

Don't you get annoyed with Emacs skipping lines?

Physical-line-mode.el provides a mechanism to move the cursor
across "physical lines", which are actual lines displayed on your
Emacs screen. Usually Emacs takes a line as "logical" one, which
is defined as a string between two newline characters. So if you
type C-p (or C-n) on a sentence which stretches for several lines,
it seems to skip the part you really want to move
to. Physical-line-mode.el makes your Emacs recognize physical
lines correctly in the following commands: previous-line,
next-line, beginning-of-line, end-of-line.


828 :名無しさん@お腹いっぱい。 :02/08/28 06:40
Emacs21.2 です。
physical-line-mode で 行移動出来無い時ないですか?
; $Id: physical-line.el,v 1.2 2002/08/26 20:35:08 komatsu Exp $
なんですが、長い行があるとそこでカーソルが止まってしまいます。

else if (graphic_dat[rnd] != "") {
document.write('<IMG SRC="' + graphic_dat[rnd] + '" WIDTH=' + graphic_width[rnd] + " HEIGHT=" + graphic_height[rnd] + ">");
}
}

上から C-n すると2行目で止まってしまいました。
.emacs を mv しておいて emacs を起動後、M-x load-file で
physical-line.el を load して 上記のファイルを読み込むと
再現します。
Emacs の幅を変えると上手くいく時もあります。

829 :名無しさん@お腹いっぱい。 :02/08/28 17:28
physical-line-mode(・∀・)イイ!
素晴しい!!
俺にとってただ一つのemacsの短所だったんですが
これでその短所も無くなりますた。

830 :名無しさん@お腹いっぱい。 :02/08/28 19:40
正直、物理行移動したいとかいう香具師は厨房だと思う。
通はカーソル移動に C-s hoge とか C-r hoge を使う、これ。


831 :名無しさん@お腹いっぱい。 :02/08/28 19:44
ecb使ってる人いる〜?
あれってbuffer開く場所帰れないのかね. デフォだと左横なんだけど使いにくい….

832 :名無しさん@お腹いっぱい。 :02/08/28 19:47
>>831
(setq ecb-layout-nr 7) とか?

833 :831 :02/08/28 20:00
それッス. あとは適当にソース読んでいじってみます…サンクス.

834 :名無しさん@お腹いっぱい。 :02/08/28 20:03
>>827, 829
ありがとー

>>828
Emacs21 の全角処理ってちょっとバグってるんで、
場合によってはうまくいかないかも。ごめんねー。
例えば、物理行末がタブだとバグるしね。
で、そのバグを回避するために、
ちがうバグを作っちゃったりしてるからねぇ。

今ちょっといじってるんで、お待ちくだされ。


835 :名無しさん@お腹いっぱい。 :02/08/28 20:05
>>830
んなこたーない。カーソルをすぐ上に移動させたいときなんかには、C-r を使う
よりも C-p で移動させた方が楽っしょ。
通はできるだけ少ないキータイプで目的を達成させる、これ。

836 :名無しさん@お腹いっぱい。 :02/08/28 20:08
一行が長いファイルなんてそんなに作んないしな。

837 :834 :02/08/28 20:42
http://taiyai.org/tmp/elisp/physical-line_2002-08-28.el

に新しいの置いときました。
XEmacs21.5 (beta5), Emacs21.2.1, Emacs20.7.2 で試したけどどうだろう?

838 :834 :02/08/28 20:44
ごめん、URL まちがえた。
http://taiyaki.org/tmp/elisp/physical-line_2002-08-28.el
です。


839 :名無しさん@お腹いっぱい。 :02/08/29 16:15
ALC (http://www.alc.co.jp/) の英辞郎 On Line を使ってます。
カーソル位置の英単語の意味を調べたいときに、
w3-fetch を呼び出して、lookup の代わりに使えるようにしています。
そのとき次のような URL を使っています。

例) congress の意味を調べる
http://home.alc.co.jp/db/owa/eijiro_red2?word_in=congress&type_in=ej

これ、w3-fetch だとうまくいくんですが、この URL をブラウザで開けないんです。
不思議。 User-Agent でも見ているのかな?

○ w3 / Debian
× IE6 / Windows XP
× Mozilla 1.1 / Windows XP
× Mozilla 1.0 / Debian

840 :名無しさん@お腹いっぱい。 :02/08/29 16:51
>>839 原因がわかりました。
JavaScript で強制的に空白ページに飛ばされているだけでした。
w3 と何の関係もありませんでした。すみませんでした。
このスレッドに書くべきじゃなかったですね。

841 :名無しさん@お腹いっぱい。 :02/08/30 11:08
Emacs のベンチマークってありますか?
Lisp の処理速度と表示速度を計りたいのです。

シリアルライン経由のキャラクタ端末とか、
ssh でフォワーディングした X端末とか、
いろんな表示環境での画面の書き換え速度などを測りたいのですが…

842 :名無しさん@お腹いっぱい。 :02/08/30 12:05
Lisp の処理速度だけなら benchmark.el があるけど

843 :名無しさん@お腹いっぱい。 :02/08/30 15:52
elp ってのが標準でついてるよ。
関数とかを指定してその関数がどれくらい呼ばれたか、時間はどれくらいかかったのかを計るやつ。

844 :名無しさん@お腹いっぱい。 :02/08/30 15:55
>>842 >>843
画面の書き換え速度はわかんないんでない?

>>841
そういうのって Emacs の外の話でないかな。


845 :名無しさん@お腹いっぱい。 :02/08/30 15:59
前に Mew-ML で〜の処理が早くなった、とかベンチマーク取ってたけど
どうあってたかはわすれた。

846 :名無しさん@お腹いっぱい。 :02/08/30 17:32
>>844
最後に
(defun foo () (bar) (sit-for 0))
みたいにして画面書き換えを強制してやれば、表示速度も含めた時間を
計測できないかな。


847 :名無しさん@お腹いっぱい。 :02/08/30 18:45
>>845
たしかelp使ってた。

848 :名無しさん@お腹いっぱい。 :02/08/30 21:26
hanoi

849 :名無しさん@お腹いっぱい。 :02/08/30 21:26
一番簡単な使い方は、

M-x elp-instrument-function or M-x elp-instrument-package
<<なんかやる>>
M-x elp-results
<<結果表示>>
M-x elp-reset

かな。あとは、適当に応用すれば OK。


850 :名無しさん@お腹いっぱい。 :02/08/30 21:35
たとえば、↓みたいなのをbench.elで保存して、

(setq load-path (cons nil load-path))
(require 'navi2ch)
(elp-instrument-package "navi2ch-")
(let ((navi2ch-article-auto-range nil))
(navi2ch-find-file "1013457056.dat"))
(elp-results)

% emacs -l ./bench.el
してボトルネックがどこにあるかを探す。
;; でも、変えるとかえって遅くなっちゃうことも多々あり。


851 :名無しさん@お腹いっぱい。 :02/08/30 21:40
XEMACSで英語のスペルをチェックする方法を教えて下さい。

852 :名無しさん@お腹いっぱい。 :02/08/30 21:48
http://www.google.co.jp/search?btnG=Google+%8c%9f%8d%f5&lr=&hl=ja&ie=Shift_JIS&q=xemacs+%83X%83y%83%8b%83%60%83F%83b%83N

853 :名無しさん@Emacs :02/08/30 21:50
>>851
(゚Д゚)ハァ?

854 :名無しさん@お腹いっぱい。 :02/08/31 00:23
taiyaki.orgの人マンセー!!

855 :名無しさん@お腹いっぱい。 :02/08/31 00:25
会いたければLC2002へゴー

856 :名無しさん@お腹いっぱい。 :02/08/31 02:25
小松さんはうぐぅいいますか?

857 :名無しさん@お腹いっぱい。 :02/08/31 06:32
>>856
(゚Д゚)ハァ?

858 : :02/08/31 13:07
不覚にもワラタ

859 :名無しさん@お腹いっぱい。 :02/08/31 14:48
emacs で、リストの内容をファイルに吐き出して、あとでまた読み込むってできますか?
ファイルに吐き出した時点で、あるコード体系に変換されてしまうわけですよね?
emacs の内部表現のまま、リストをファイルに吐き出したり読み込んだりしたいんですが…

860 :名無しさん@お腹いっぱい。 :02/08/31 15:49
>>859
ごめんな〜、ctext で勘弁しといてくれや

861 :名無しさん@お腹いっぱい。 :02/08/31 19:45
no-conversion で保存すりゃいいんじゃないの?


862 :名無しさん@お腹いっぱい。 :02/09/01 19:55
>>856
言わないよ。

863 :名無しさん@お腹いっぱい。 :02/09/01 21:19
>>859
文字コードの話だと思ってたけど,
そうじゃなくて, (1 2 3) とかをそのまま出力したいってコト?
prin1 と read を使うといいかも.

(setq foo '(1 2 3))
;; 出力
(prin1 foo (get-buffer-create "test"))
;; 入力
(read (prog1 (set-buffer "test") (goto-char (point-min))))


864 :名無しさん@お腹いっぱい。 :02/09/02 02:42
>>859
叩き台にどうぞ

(defun my-read-object-from-file (file)
"FILE からオブジェクトを読み込む。"
(with-temp-buffer
(insert-file-contents (expand-file-name file))
(read (current-buffer))))

(defun my-write-object-to-file (object file)
"OBJECT を FILE に書き込む。"
(with-temp-buffer
(let (require-final-newline)
(insert (format "%S" object))
(write-file (expand-file-name file)))))

865 :名無しさん@お腹いっぱい。 :02/09/02 10:47
この共産主義者どもめっ!!!
http://academy.2ch.net/test/read.cgi/whis/1027172398/

866 :名無しさん@お腹いっぱい。 :02/09/03 21:09
(setq my-test-list (split-string "abc def ghi jkl" " "))
(setq my-test-str (format "%s" my-test-list))
としたら
"(abc def ghi jkl)"
になるんですが、この両端の括弧を除くにはどうすればいいのでしょうか?
my-test-list がリストだから文字列に直そうとすると
(setq my-test-str (format "%s %s" (car my-test-list) (car (cdr my-test-list))))
なんてやってみるも、リストの長さが不定なので無理です。


867 :名無しさん@お腹いっぱい。 :02/09/03 21:15
>>866 もとに戻るような気がするのですが。。。

(setq my-test-str (mapconcat 'identity my-test-list " "))
(setq my-test-str (mapconcat (lambda (x) (format "%s" x)) my-test-list " "))
など。


868 :名無しさん@お腹いっぱい。 :02/09/04 15:39

文字端末上で describe-key で BackSpace 押すと
C-d になってるんですが、C-h にするにはどこを
いじればいいんでしょうか?

869 :名無しさん@お腹いっぱい。 :02/09/04 18:01
ガイシュツ. 過去ログ読んでくれ.

870 :名無しさん@お腹いっぱい。 :02/09/04 18:02
>>868
Emacs でなくて端末側の問題だったりしない?

>>869
どこで出てたのか教えてやれよ。

871 :名無しさん@お腹いっぱい。 :02/09/04 19:01
Emacsで決まった時間にモードラインとかにメッセージ出したりビープ鳴らしたりする方法ありますか?
無かったら自分で作っちゃおうかなと思ってるんですけど….

872 :名無しさん@お腹いっぱい。 :02/09/04 19:22
>>871
appt-add とかってあるみたいね。

873 :868 :02/09/04 19:58

文字端末上($TERM は Linux)では、
BackSpaceキーは ^?

kterm上では
BackSpaceキーは ^H
Deleteキーは ^?
です。

emacs -nw で環境によって describe-key BackSpaceキー が
C-dだったり、DELだったりします。

.emacs.el で
(define-key function-key-map [backspace] [8])
(put 'backspace 'ascii-character 8)
としているので、X上でも文字端末上でもBackSpaceで^Hになって
欲しいのですが。



874 :名無しさん@お腹いっぱい。 :02/09/04 20:23
>>873
> 文字端末上($TERM は Linux)では、
> BackSpaceキーは ^?

こっちを変えろ。
$ stty erase ^h
$ stty -all

875 :868 :02/09/04 20:56
>874

stty はやりました。stty -a で erase=^H になってます。
でも Ctrl-V BackSpace すると ^? です。
emacs でもdescribe-key BackSpaceはDELのままです。

876 :名無しさん@お腹いっぱい。 :02/09/04 21:22
>>871 itimer?


877 :871 :02/09/05 00:30
>>872
ありがとうございます. それでうまく行きました.

>>876
itimerについて調べてみたんですけど, なんか良く分からなかったです(^^;


878 :名無しさん@お腹いっぱい。 :02/09/05 01:10
My name is hoge.
に対して
sed -e 's/is/are/'
のようなことはできますか?
(my-sed "My name is hoge." "s/is/are/")
みたいに。
emacs lisp リファレンスマニュアルに
perform-replace や replace-match
というのがありましたが、この辺りにサンプルコードが全く書いて無いし
引数も多いので使い方が全く分かりません。

879 :名無しさん@お腹いっぱい。 :02/09/05 01:16
>>878
(require 'navi2ch-util)
(navi2ch-replace-string "is" "are" "My name is hoge.")


880 :878 :02/09/05 01:30
>>879
ありがとうございます。navi2ch のソースを持ってきて navi2ch-replace-string
をコピりました。
string-match や replace-match を使っているんですね。

881 :名無しさん@お腹いっぱい。 :02/09/05 04:32
目に優しい背景色は何色ですか?

882 :名無しさん@お腹いっぱい。 :02/09/05 04:44
black とか darkgreen とかじゃない?

883 :名無しさん@お腹いっぱい。 :02/09/05 05:58
blackは #000000 だけどdarkgreenはなんじゃろな

884 :名無しさん@お腹いっぱい。 :02/09/05 09:16
>>875
その糞shellのスレか、くだ質スレに行け。emacs関係ない。

885 :名無しさん@お腹いっぱい。 :02/09/05 09:30
>>883

0 100 0dark green

って行があったから、多分 #006400 だと思う。
もう少し暗い方がいいかな…

886 :名無しさん@お腹いっぱい。 :02/09/05 10:01
>>884
そんなことないんじゃない? shell なんか関係ないし。

BS に対応して端末から上がってくる文字は違うのだけど
emacs 上ではそれらを C-h に変換したいということだと思ったけど。
info の Translating Input Events あたりの話かなあと。


887 :名無しさん@お腹いっぱい。 :02/09/05 12:41

日付関係は current-time-string しか知らないのですが、
date '+%Y%m' みたいなフォーマットで日付を返してくれる関数
はありますか?

888 :名無しさん@お腹いっぱい。 :02/09/05 12:53
>>887
format-time-string だね


889 :名無しさん@お腹いっぱい。 :02/09/05 12:57
>>888
三樟

890 :名無しさん@お腹いっぱい。 :02/09/05 13:15
>>881 papaya whip (ワラ

891 :名無しさん@Emacs :02/09/07 16:04
教えて君で申し訳ないんですが。
java を書くのに JDE-Mode を利用してますが、tab 幅を変えたくて、

(add-hook
'jde-mode-hook
(lambda ()
(progn (setq tab-width 4))))

とか、

(eval-after-load "jde"
'(setq tab-width 4))

してみたんですが、有効になりません。
C では tab-width を 2 にしており、それはそのままにしたいのです。

どうすれば良いのか、ご存知の方いらっしゃいますか??


892 :名無しさん@お腹いっぱい。 :02/09/07 17:22
>>891
set-style 関係とか offset 関係は設定してる?

893 :名無しさん@お腹いっぱい。 :02/09/07 21:51
>>871
display-deadline.el

894 :名無しさん@お腹いっぱい。 :02/09/08 03:34
突然ですが質問させていただきます。

emacsでは日本語入力できるのですがxemacsでは以下のようなエラーがでて入力できません。
ぐぐってみましたが意味がわからなかったのでアドバイスお願いします。
(initialization/error) An error has occurred while loading /home/hoge/.xemacs/init.el:

Can't activate input method 'japanese-canna'

To ensure normal operation, you should investigate the cause of the error
in your initialization file and remove it. Use the '-debug-init' option
to XEmacs to view complete error backtrace.

でxemacs -debug-initを実行した所
Signaling:(error "Can't activate input method 'japanese-canna'")
signal(error ("Can't activate input method 'japanese-canna'))
cerror(Can't activate input method '%s'" "japanese-canna')
apply(cerror "Can't activate input method '%s'" "japanese-canna")
error("Can't activate input method '%s" "japanese-canna")
activate-input-method(japanese-canna)
set-input-method(japanese-canna)
load-internal("/home/hoge/.xemacs/init.el" t t t undecided)
load("/home/hoge/.xemacs/init.el" t t t)
load-user-init-file()
load-init-file()
command-line()
normal-top-level()

ディストリはDeiban(Woody)で日本語の設定にはset-language-envを使用しました。
Xはblackboxを使っています。

895 :名無しさん@Emacs :02/09/08 04:22
mule-sumo インストール汁

896 :名無しさん@お腹いっぱい。 :02/09/09 19:00
Emacs 大好きなんだけど、時々 Vim でソースコード表示した時に
Vim の syntax ってよく出来てて綺麗だな〜って感心しちゃう。
Emacs でもシコシコ設定していけば出来るんだろうけど、
標準でこれだけ出来ているのはいい。

Emacs の Shell-Scripy-mode だと ` ` で囲んだ間は
同じ色になっちゃうけど、Vim だとその中もちゃんと色分けしてくれる。

ボヤッキーでした。


897 :名無しさん@お腹いっぱい。 :02/09/09 19:03
*scratch* 消してしまった時作る方法を教えて下さい。

898 :名無しさん@お腹いっぱい。 :02/09/09 19:06
>>897
C-x b *scratch* RET
M-x lisp-interaction-mode RET

899 :名無しさん@お腹いっぱい。 :02/09/10 04:53
>>896
その色分けは便利そう…
shell script だと、 quote する事も多いし…

900 :名無しさん@お腹いっぱい。 :02/09/10 10:41
C-h は backward-delete-char にしてる人が多いと思うけど、ほんとの help
コマンドはどこに割り当ててます?
僕は C-c h
(global-set-key "\C-ch" 'help-command)



掲示板に戻る 全部 前100 次100 最新50

read.cgi ver5.26+ (01/10/21-)