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

    【叩かれて】Emacs Lisp道場【強くなれ】

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

    551 = :

    あ、みっけた。

    555 = :

    Elispはじめて間もないのですが、質問です。
    ある変数に入っている文字コードを判別するのって
    どうやればいいのでしょうか??
    例えば、

    (setq hoge1 "ほげ" hoge2 "hoge")

    ここで、hoge2 に入っている文字列がローマ字であるかどうかだけ
    分かれば、もしくは hoge1 に2バイト文字が入っているかどうかが
    分かれば分かればいいのですが・・・

    get-text-property あたりを見ているのですが・・・
    ご教授お願いします。

    556 = :

    >>555
    その目的なら multibyte-string-p でよさそうな気がする。
    正規表現で調べるって手もあるだろうけど。

    557 = :

    「ローマ字であるかどうかだけ」
    これは、「アルファベットのみからなる」と置き換えてもいいの?

    559 = :

    >>556
    全然よくない。

    560 = :

    皆様、レスありがとうございます。
    >>557さんの言うとおり、入っている文字列が
    ただ単に日本語かまた違うものかを判別したいだけ
    なので”アルファベットのみからなる”と
    置き換えても構わないと思います。

    すみません、よろしくお願いします。

    562 = :

    hoge が、アルファベットのみで構成された文字列かどうか調べるなら、

    (string-match "\\`[A-Za-z]+\\'" hoge)

    charset で調べるなら、

    (let ((charsets (find-charset-string hoge)))
    (catch 'done
    (while charsets
    (unless (memq (car charsets)
    '(ascii eight-bit-control eight-bit-graphic))
    (throw 'done t))
    (setq charsets (cdr charsets)))
    nil))

    とか?

    563 = :

    おお、素早いレスありがとうございます!!
    今試して見ます!!

    564 = :

    >>562
    おお、出来ました!!
    正規表現での判別と文字そのものの判別ですか~
    なるほどなるほど。どうもありがとうございます。
    勉強になりました。

    566 = :

    再度書き込みすみません。
    例えば、以下のように関数の続きとして>>562さんのコードを
    使いたいのですが、(let を外してしまうと
    上手く動いてくれません。let は局所的変数宣言でしたよね?

    (defun .....
    .
    .
    (setq hoge (split-string "name1 name2 name3"))
    (setq name_s (length hoge) name_n 0 mew-from-sex 1)
    (if (let ((charsets (find-charset-string (nth name_n hoge))))
    (catch 'done
    (while charsets
    (unless (memq (car charsets)
    '(ascii eight-bit-control eight-bit-graphic))
    (throw 'done t))
    (setq charsets (cdr charsets)))
    nil))
    (setq people 0)
    (setq people 1))
    .
    )
    よろしくお願いします。。。

    568 = :

    関数の始めにいっきに let で変数宣言したくて、

    (let ((charsets (find-charset-string (nth name_n hoge))))
    も含めて宣言しようと外したのですが。。。

    569 = :

    多段let撲滅

    571 = :

    >>569
    参考までに教えて欲しんだけど
    1. 実行速度
    2.可読性
    のいづれかの理由によるものでしょうか? それとも他の理由?

    572 = :

    >>571
    いや、俺はちょっと皮肉(?)ってみただけで。

    573 = :

    えっと、以下のようにするということでしょうか??

    (let (charsets) hoge name_s name_n people mew-from-sex
    (setq hoge (split-string "name1 name2 name3"))
    (setq name_s (length hoge) name_n 0 mew-from-sex 1)
    (if (progn setq charsets (find-charset-string (nth name_n hoge))
    (catch 'done
    (while charsets
    (unless (memq (car charsets)
    '(ascii eight-bit-control eight-bit-graphic))
    (throw 'done t))
    (setq charsets (cdr charsets)))
    nil))
    (setq people 0)
    (setq people 1)))

    574 = :

    うわ、空白がすごくみずらいですね。。。
    すみません。。

    575 = :

    >>573
    letの使い方理解してないぞ

    579 = :

    Emacs をわたし色に染めて♪ の人は自殺しそうでしたがまだ生きてますか?

    580 = :

    >>579
    なにがあったの?

    581 = :

    LISPのクラスを取るか迷っている初心者ですが、LISPが出きると、どういうことができるようになるのか教えてください。

    582 = :

    >>581
    特にない。

    583 = :

    >>581
    普通のやつらの上を行ける。

    584 = :

    >>583
    どういう点で?

    585 = :

    >>584
    http://www.shiro.dreamhost.com/scheme/trans/beating-the-averages-j.html

    586 = :

    >>581
    クラスって大学か何かか。
    EmacsLispでCLOSみたいなもんを誰か作ったのかと思った。

    587 = :

    学校の授業という意味です。

    588 = :

    >>585
    ありがとうございます。読みました。
    中で「Lispはパワフルな言語だとは知っているけど」等、LISPは凄いと絶賛していますが、
    具体的にどう凄いのかってのが、どんなところで使われているのかってのが分からないのですが…。
    LISPが出きると、どういうときにそれを活かせますか?

    この授業は卒業のため取らなければならない科目ではないのですが、
    将来役に立つのなら、取って見ようかなと迷っています。

    589 = :

    学生なのに自分からは何も調べようとしないやつには、どんなことであろうと将来役に立たない

    590 = :

    lisp なんかできたとして、将来研究所とかに行かない限り用途ないのでは?
    perl なり php なり使えたほうがバイトも出来ておとく。

    591 = :

    perlなんか授業でやるか?

    592 = :

    perlの授業あります。
    将来はネットワークエンジニア希望です。

    593 = :

    >>592
    いらないんじゃね?

    594 = :

    久しぶりに2chに来たらsageるつもりがageちまった。

    595 = :

    とりあえず、この板ってのは古い知識しか持たない老人が多いので、
    こんな場所で進路相談をするのは不適切なんじゃないかなと思う。

    596 = :

    将来役に立つかっつったら微妙だわな。
    だけど大学において考え方を学ぶ、学び方を学ぶって意味ではlispはおすすめ
    かもしれず。
    関係ないけど、「出きる」って変換は気持ち悪いな。

    597 = :

    LISPを使って(応用して)なにをするかによるだろう。

    単純に、LISPを勉強するだけなら独学で(Emacs使ってるうちに)勉強
    できるよ。なにしろ、単純な言語だからな。

    インタプリタの作成とかまでやるんだったらいいんじゃないかな?
    言語仕様が簡単だから結構楽しいと思うよ。

    598 = :

    > 将来役に立つかっつったら微妙だわな。
    > だけど大学において考え方を学ぶ、学び方を学ぶって意味ではlispはおすすめ
    > かもしれず。

    関係ないけど、気持悪い書き方だな。

    600 = :

    > 訊

    おじさん、何でこんな漢字つかってるの?


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

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


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