[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: use google "I feel lucky" to handle url

From: Hideyuki SHIRAI (白井秀行) <shirai@xxxxxxxxxxx> 曰く
Subject: [emacs-w3m:08630] Re: use google "I feel lucky" to handle url
Message-ID: <20060428.134554.103021845.shirai.hideyuki@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 28 Apr 2006 13:45:54 +0900 (JST)

> > > (1) utf-8 がない Emacs だと、なにを使うのが良いかな?
> > >     cs は w3m-default-coding-system で良いと思うのだけど、
> > >     w3m-default-coding-system を charset にする関数が無いので面
> > >     倒だなぁ。
> > 
> > (unless (and (w3m-find-coding-system 'utf-8)
> > 	     (string-equal
> > 	      (decode-coding-string
> > 	       (encode-coding-string "あ" 'utf-8) 'utf-8)
> > 	      "あ"))
> >   "やらない")
> > ;; とか。
> うーーむ。悩みどころ。。。


これで、Emacs21 を使っている中国と台湾と韓国の人以外は大丈夫だと
思うのだけど。XEmacs はわかんないし。

(defcustom w3m-google-feeling-lucky-charset
   ((or (featurep 'un-define) (fboundp 'utf-translate-cjk-mode))
   ((equal "Japanese" w3m-language)
   ((w3m-find-coding-system 'utf-8)
   (t "US-ASCII"))
  "*Character set for \"I'm Feeling Lucky on Google\"."
  :group 'w3m
  :type '(string :size 0))

(defsubst w3m-canonicalize-url (url &optional feeling-lucky)
  "Add a scheme part to an URL or make an URL for \"I'm Feeling Lucky on Google\"
if it has no scheme part."
  (w3m-string-match-url-components url)
   ((match-beginning 1)
   ((and (file-name-absolute-p url) (file-exists-p url))
    (concat "file://" url))
    (let* ((charset w3m-google-feeling-lucky-charset)
	   (cs (w3m-charset-to-coding-system charset))
	   (str (w3m-url-encode-string url cs)))
      (format (concat "http://www.google.com/search"
	      charset charset str)))
    (concat "http://" url))))

## file のチェックを先にしてみました。

白井秀行 (mailto:shirai@xxxxxxxxxxx)