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

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

元スレEmacs Part 46

emacs スレッド一覧へ / emacs とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
801 : 名無しさん@お腹 - 2014/11/17(月) 14:40:11.04 .net (+55,+29,-11)
だから昔から言ってるだろ、url.el は糞だって
それに依存してる eww もうんこを積み上げただけだよ
802 : 名無しさん@お腹 - 2014/11/17(月) 14:57:26.60 .net (+57,+29,-6)
文句言っても多国語対応は日本人がやらなきゃ誰もやらんよ
803 : 名無しさん@お腹 - 2014/11/17(月) 15:20:32.98 .net (+15,-30,-256)
>>800
いろいろ見てみた結果、以下になった。

1. Google はわけわからん UA(+たぶん日本っぽいIP) だと Shift_JIS 決め打ちで Accept-Charset がなんであれ Shift_JIS で表示してくる。
ついでに hidden 付き input 要素で ie=Shift_JIS を埋め込んでくる。ここらへんは Chrome とかの他のブラウザでも同じ挙動になった。

2. eww というより url.el はフォーム文字列がマルチバイト文字列の場合、UTF-8 決め打ちで送信する。

2 が問題で、普通は表示しているページと同じエンコーディングでフォーム文字を送信すべきなはず。
携帯なんかだとここが Shift_JIS 決め打ちらしいから google 側はとりあえずわけわからんのは Shift_JIS にしてるんかね。
url-encode-url 見ると確かにマルチバイト文字を utf-8 に変換してるんだよなぁ・・・
804 : 名無しさん@お腹 - 2014/11/17(月) 15:34:21.80 .net (-4,-25,+2)
やっぱ url.el 糞じゃねえか
805 : 名無しさん@お腹 - 2014/11/17(月) 15:38:41.73 .net (+0,-30,-26)
>>803
POST するときに Content-Type 送るけどそこで charset=utf-8 指定すればいいんじゃないの?
806 : 名無しさん@お腹 - 2014/11/17(月) 16:12:28.31 .net (+4,-29,-72)
POSTじゃなくてGETだな
Googleの検索ページがUTF-8で来てるのに、フォームの内容をShift_JIS決め打ちで送信するという挙動に問題がある
emacs側に非はないだろ
807 : 名無しさん@お腹 - 2014/11/17(月) 17:03:25.33 .net (+89,+29,-23)
まあクリック猿で解析してるつもりになってねーでRFC精読する作業にかかったらええがな
808 : 名無しさん@お腹 - 2014/11/17(月) 17:11:58.72 .net (+64,+29,-1)
>>807
お前口だけだなw
809 : 名無しさん@お腹 - 2014/11/17(月) 19:01:47.17 .net (+7,-29,-25)
>>806
いや、トップの検索ページ「も」Shift_JIS で来るのよ。
だから Shift_JIS でエンコードして GET 投げるべきだとは思う。

url.el 直すのもいいけど UA 変えて google のおせっかい回避が今んとこ無難な感じかなあ。
810 : 名無しさん@お腹 - 2014/11/17(月) 19:07:05.34 .net (+0,-29,-8)
ewwてタブ使えないの?
811 : 名無しさん@お腹 - 2014/11/17(月) 19:12:10.08 .net (+5,-30,-24)
>>809
(set-language-environment "UTF-8")してるからか俺んところはUTF-8で来てるよ
どのみち化けることには違いないが
812 : 名無しさん@お腹 - 2014/11/17(月) 19:22:58.29 .net (+16,-30,-123)
>>811
いやいや、取得したやつは eww が eww-display-html で decode-coding してるから
自分とこの buffer-file-coding-system で表示されるだけで、送られてくるデータは Shift_JIS なのよ。
例えば ↓の URL なんかは Shift_JIS で書かれたページなんだけど、eww だとどのみち decode されるから
文字コードのニモニックが S になったりはしない。他のブラウザだとちゃんとエンコードのところは Shift_JIS になる。

http://www.shtml.jp/blog/ga/sjis/safari_ad.html
813 : 名無しさん@お腹 - 2014/11/17(月) 19:30:48.72 .net (+4,-30,-49)
>>812
悪い間違えた…最初のページはSift_JISで検索結果のページがcharset=UTF-8になってるだけだった
結果ページの中身はUTF-8っぽくて一部ちゃんと表示されてるけど、化けてるページはそのまま表示してる感じか
814 : 名無しさん@お腹 - 2014/11/17(月) 19:37:31.03 .net (+2,-29,-27)
>>810
tabbarでも使ったらいいんじゃね
と思ったけどリンクを別バッファで開く機能もないから現状どうしょもないね
バッファ名も*eww*で決め打ちしてるからrenameして複数バッファで運用も無理だわ
815 : 名無しさん@お腹 - 2014/11/17(月) 19:45:23.15 .net (+57,+29,-14)
ewwなんて三回ぐらい起動してスゲーっていってあとは存在を忘れるようなのだろ
なにまじになっちゃってんの
816 : 名無しさん@お腹 - 2014/11/17(月) 19:46:01.36 .net (+13,-30,-121)
>>812
あー文字化け直った
最終的に (encode-coding-string str buffer-file-coding-system) してたから
(set-language-environment "Japanese") な環境でewwを起動して
http://www.google.co.jp/ にアクセスすれば化けないよ

つうか、文字化けしない人も居たからそういう事だね
817 : 名無しさん@お腹 - 2014/11/17(月) 20:20:27.97 .net (+0,-30,-35)
>>816
(prefer-coding-system 'cp932)
ってだけじゃないの?
818 : 名無しさん@お腹 - 2014/11/17(月) 20:28:26.79 .net (+0,-29,-10)
>>816
多分 cp932 になってるよそれ
819 : 名無しさん@お腹 - 2014/11/17(月) 21:12:54.56 .net (+21,-30,-297)
>>803 訂正だわ

フォームの入力文字集めてエンコードするのに url.el の機能は使ってなかった。
mm-url-encode-www-form-urlencoded でエンコードしてるんだけど
これは最終的に find-coding-systems-string でエンコーディングを決定してて、
漢字なんかが渡されると prefer-coding-system が utf-8 環境 なら utf-8 が、cp932 環境なら cp932 が返ってくる。
cp932 環境だと cp932 でエンコードされるから確かに Shift_JIS を要求してくるバージョンの google ではうまくいく。

でもそのかわり UTF-8 で送信してくるところでも cp932 で文字列送るようになっちゃうから
たとえばhttp://search.yahoo.co.jp/ なんかでうまく行かなくなるよ。
820 : 名無しさん@お腹 - 2014/11/17(月) 21:34:16.00 .net (+3,-30,-297)
とりあえず以下の advice 指定すれば Shift_JIS のページでは Shift_JIS を、
UTF-8 のページでは UTF-8 でフォームの文字を送信するようになった。
ほんとだったら form 要素の accept-charset 属性があったらそれも読まなきゃいけないんだろうけど・・・

(defadvice eww-display-html (after eww-change-buffer-coding-system activate)
(set-buffer-file-coding-system (ad-get-arg 0)))

(defadvice eww-submit (around eww-override-find-coding-systems-string activate)
(cl-letf (((symbol-function 'find-coding-systems-string)
(lambda (string)
(list buffer-file-coding-system))))
ad-do-it))
821 : 名無しさん@お腹 - 2014/11/17(月) 22:40:32.67 .net (+33,-4,-46)
>>819
なるほど、結局この辺の処理は英語圏のガイジンだとデバッグ出来ないし
日本人がパッチ書いて提出しないと直らないだろうね
ちなみに、eww-downloadの件は修正がコミットされたよ
822 : 名無しさん@お腹 - 2014/11/17(月) 23:04:20.08 .net (+7,-30,-59)
>>821
ほんとだ、bug-gnu-emacs にパッチ投げられてたんだ
複数バッファのパッチも投げられてるんだな

しかしパッチ作るにしても find-coding-systems-string を置き換えるなんてのはやり過ぎだし
どうしたもんだか
823 : 名無しさん@お腹 - 2014/11/18(火) 17:38:14.07 .net (+7,-20,-22)
ぶっちゃけ、emacs-w3mをもともと使っていた人は、ewwに乗り換えるメリット
は何もないんじゃないかしら。何かある?
824 : 名無しさん@お腹 - 2014/11/18(火) 18:01:32.08 .net (-1,-29,-15)
レンダリングが速い
Windowsでも簡単に使える
825 : 名無しさん@お腹 - 2014/11/18(火) 18:28:23.71 .net (-1,-29,-24)
DOS窓(コマンドプロンプト)でも表示出来るし
しかし、CSSの解釈はどうすんだろうな
もはやCSSの解釈無しではまともにレイアウトなんか出来ないし
826 : 名無しさん@お腹 - 2014/11/18(火) 18:49:06.31 .net (+57,+29,-10)
使えることに意味があるぐらいの話じゃないの、現状は。
javadoc が読めればいいやぐらいの期待感だと思うけど。
827 : 名無しさん@お腹 - 2014/11/18(火) 21:07:58.96 .net (+34,+6,-58)
ネイティブかつ高速なレンダラーになって
cssにもスクリプトにも対応の可能性がひらけてる
cssはw3でテキストブラウザなりのことはやれる実績あるし
828 : 名無しさん@お腹 - 2014/11/18(火) 22:04:54.51 .net (+57,+29,-53)
10年程前はテキストブラウザでもよかったかもしれないけど今はキツくない?
個人的にはテキストブラウザで見れるページの方が好きだけど
829 : 名無しさん@お腹 - 2014/11/18(火) 22:33:35.43 .net (+52,+29,+0)
10年前だってキツかったさ
830 : 名無しさん@お腹 - 2014/11/18(火) 23:12:35.36 .net (+3,-30,-94)
emacs-w3mの操作でリンクにカーソル合わせるためにAcejump使ってるけど
もうちょっとスマートな方法ある?

遅いけどvim-w3mの'f'やfirefoxのvimperatorの'f'等に比べて1つタイプ数と見るものが多い
831 : 名無しさん@お腹 - 2014/11/19(水) 00:54:42.09 .net (+57,+29,-34)
結局ちゃんと見ること出来ないページのほうが多くて普通のブラウザ使っちゃう回数が増えて
はじめからつかわなくてもよくね?ってなるのが落ちだわな
832 : 名無しさん@お腹 - 2014/11/19(水) 01:04:46.08 .net (+57,+29,-3)
ewwは大器晩成なんだ
長い目で見てやってくれ
833 : 名無しさん@お腹 - 2014/11/19(水) 07:20:58.08 .net (+92,+27,-83)
マルチバイトなんてどうでもいい人のほうが多いわけだし、
日本人ですら、APIドキュメントとか英語で読んでる人多いだろうし、
いまでも十分役に立ってるけど
ドキュメント累はemacs-w3mから乗り換えたよ
834 : 名無しさん@お腹 - 2014/11/19(水) 10:32:55.09 .net (+70,+29,-21)
>>833
立ち位置的にそこら辺で使うのがメインであって
まともなブラウジングは普通のブラウザ使うよな
835 : 名無しさん@お腹 - 2014/11/22(土) 18:58:12.41 .net (+3,-30,-202)
一旦 alias された変数をそれぞれ別の変数にするにはどうしたらよいのでしょうか?

(defvar a nil)
(defvaralias 'b 'a)

(makunbound 'b) ;; 一旦解除しても
(setq a 10) ;; この時点で b が復活してしまう
b ;; => 10

(makunbound 'a) ;; alias 元を消しても
b ;; => void variable ;; 一旦は消えるが・・
(setq a 10) ;; a を設定したとたん
b ;; => 10 ;; b も復活する・・・

具体的にやりたいことは、input-method-deactivate-hook と input-method-inactivate-hook が
alias 化されているにもかかわらず、deactivate-input-method の run-hooks で両方呼ばれてるので
同じフックが二度実行されてしまうのを解消したいのです。
836 : 名無しさん@お腹 - 2014/11/22(土) 20:15:05.91 .net (-2,-29,+0)
`unintern'やろか。
837 : 名無しさん@お腹 - 2014/11/22(土) 20:55:38.38 .net (-2,-29,-5)
>>836
unintern で obarray から消したあと defvar でいけました。
ありがとうございます。
838 : 名無しさん@お腹 - 2014/11/25(火) 22:03:01.76 .net (+67,+29,-29)
よく Emacs は小指が~って言うけど、
左手親指+左手人差し指の M-b が辛すぎて親指が壊れそう…(´;ω;`)

 1. 親指でなく小指か薬指を使う
 2. 右 Alt キーを右手の小指で押す
 3. b キーを右手の人差し指で 押す
 4.
839 : 名無しさん@お腹 - 2014/11/25(火) 22:05:21.04 .net (+52,+29,-3)
それは親指脆すぎ
鍛えたほうがいい
840 : 名無しさん@お腹 - 2014/11/25(火) 22:15:06.01 .net (+61,+29,-21)
Emacsの為にキー配置変えてしまうのもあり
キーバインドではなくてキーそのものを変える
841 : 名無しさん@お腹 - 2014/11/25(火) 23:06:55.46 .net (+57,+29,-15)
右Alt の位置が右の方にあると確かに親指が内側に寄るからちとつらいかもしれんねえ
842 : 名無しさん@お腹 - 2014/11/26(水) 00:12:58.02 .net (+60,-29,-23)
>>840
昔の84キーボードなんで最下段は Ctrl と Alt とスペースキーしかないんですわ
USB脳波Altキーとか出ないかなー
843 : 名無しさん@お腹 - 2014/11/26(水) 00:18:57.79 .net (-1,-29,-22)
だから日本語キーボードにしろと
無変換・変換・カタカナ/ひらがなを好きなモディファイアキーに出来るのは大きい
844 : 名無しさん@お腹 - 2014/11/26(水) 00:25:26.97 .net (-1,-29,-20)
無変換も変換もカタカナひらがなも全部ctrlにすると捗る
845 : 名無しさん@お腹 - 2014/11/26(水) 00:36:24.67 .net (+0,-28,-5)
SKK 使ってる身としては Shift も捨てがたい
日本語キーボードだと右 Alt はそんなにしんどい位置でもないんだよね。
846 : 名無しさん@お腹 - 2014/11/26(水) 00:44:48.84 .net (+58,+30,-65)
変換→Ctrlのみだが捗る
片手でカーソルが動かせるし小指を酷使して痛める事が無い
俺は左手小指を酷使して痛めたからよく分かるw
ちなみに早い内に酷使するのを止めればちゃんと直る
847 : 名無しさん@お腹 - 2014/11/26(水) 00:58:17.31 .net (+58,+29,-44)
俺も小指やられて整形外科に通うハメになったことあるけど
たぶん痛めちゃう人は力入れすぎてるんだ。
必要最小限の力で押すようにしてから全く痛めなくなった。
848 : 名無しさん@お腹 - 2014/11/26(水) 01:05:07.97 .net (+57,+29,-12)
最近、小指を気にして skk の変換開始を無変換 sticky にしたけど、真に小指を痛めていたのはどうやら Ctrl + b だったようだ。

私の小さい手に、あのキー配置は過酷すぎる。
849 : 名無しさん@お腹 - 2014/11/26(水) 01:37:12.74 .net (+57,+29,-23)
15年間くらいEmacsを使ってるが小指を痛めたことは一度もないなぁ
ピアノやってたこととか関係あるのかな
850 : 名無しさん@お腹 - 2014/11/26(水) 01:37:16.82 .net (+105,+24,+0)
>>842
これ試してみなよ
/nox/remoteimages/97/83/dfdb367b3d05dd8934753754fd6a.gif
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / emacs スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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