w3m その8
TIPS 串設定 → オプション設定パネルで 日本語表示 → 環境変数と端末ソフトを日本語化 migemo検索 → --with-migemo (j)vim の空行付加 → jvim は :set noeol、vim は :set bin noeol ps, pdf を見る → application/postscript; ps2ascii %s ; copiousoutput Word の文章を読む → application/msword; wvWare %s /dev/stdout; x-htmloutput 動画 → video/*; mplayer -vo aa -aadriver curses -ao oss -playlist %s; needsterminal 動画(Linux FB) → video/*; mplayer -vo fbdev2 -fs %s; needsterminal [Q]w3mメモリ食いすぎ。BoehmGCが悪いのでは? [A]ページバッファの開きすぎのせいなのでGCを変えても解決できません。 CLOSE_TABとBACKとDELETE_PREVBUFを使ってこまめにバッファを消しましょう。 ただし多くの環境ではバッファを消した瞬間に目に見えて使用メモリが 減るわけではありません。C-FAQ 7.24参照。 http://www.kouno.jp/home/c_faq/c7.html http://www.aoky.net/articles/why_poignant_guide_to_ruby/index.html ここで画像表示をオンにしたらw3mimgdisplayがCPU喰いまくって w3mの操作できんくなった。いったんw3mimgdisplayを殺しても、 画像のところにカーソルがいったらまたw3mimgdisplayが生成されて 同じ事になった。 まえにも他所でこんなことあったな。 質問します。 「あ い う え お」 ---> 「あいうえお」 のように文字の間のスペースが消えるんですが、スペースをそのまま 表示するようにできますか? >>11 htmlの仕様に忠実なら半角スペースは表示されないのが正しい。 逆にスペースが入って表示される方が本来はおかしい。 >>5 > C-FAQ 7.24参照。 そこで C-FAQ 7.24 は参照先として適切とは思えないんだけど。 そのページの中だと、 7.25 の方が良いんじゃないかな。 http://www.kouno.jp/home/c_faq/c7.html#25 >>12 そうなんですか? htmlの仕様はよく知らないんですが困ってる点だけ書くと、日本語とロシア語が 混在したページなどで日本語の場合はスペースが消えても構わないんですが、 ロシア語の単語の間のスペースが消えると読みにくいんです。 だからスペースを表示する設定があったら便利だと思ったんです。 別に日本語と混在してなくても ロシア語のページは全部スペース喰われるよね ttp://www.ifun.ru/comments/joke12533.html > For all HTML elements except PRE, sequences of white space separate > "words" (we use the term "word" here to mean "sequences of non-white space > characters"). When formatting text, user agents should identify these > words and lay them out according to the conventions of the particular > written language (script) and target medium. htmlの仕様だとスペースは単語の区切りと定義されているから w3mがロシア語でこれを適切に処理できてないということになるんかな? 日本語 では 単語 の 間 には 空白 は 置か ない から これ で いい ん だ けど だよもん >>16 表示が UTF-8 なら空白は保存されるんだけど、EUC-JP などの日本語用文字コードで表示すると空白は消される。 >>15 日本語とロシア語が混在したページ これは大変難しい。 つまり This is a pen. も半角空白を詰めないでほしい、ってことか。 単語の区切りと言えば、NEXT_WORD(w)とPREV_WORD(W)が 日本語では全く役に立たないのもこの件と少し関連するのかな utf-8 環境の方は migemo をどのように設定していますか? 特に設定しないと euc-jp 出力されて正常動作しないですよね。 そういえば、w3mbookmark でも UTF8環境下だとバケバケだよ ブックマークの登録と読込なら化けてないけど。 関係ないけど DICT_WORD_AT って数字も単語区切になるんだね。 system_charset EUC-JP と migemo_command migemo -t egrep /usr/share/migemo/migemo-dict |nkf -Ewu の 2通りの方法があったけど、前者はオプションパネルが化けるんで後者にした。 前スレは天寿を全うされましたか?それとも死神に連れていかれましたか? >>29 From: [985] 名無しさん@お腹いっぱい。 <sage> Date: 2007/07/25(水) 15:55:06 で死神に連れていかれました。 FreeBSD の ports に security/ca_root_nss ってのができてるみたいなんだけど、 コレ使うようにできないかな? # w3m は野良ビルドで使用してます https://helixcommunity.org/projects/player/files/download/2479 から RealPlayer-10.0.9.809-20070726.i586.rpm おとすと gzipped なんだけど。 こればぐかな。いってみただけ。 emacs-w3mが新版リリースとか言ってますが、 こっちもそういう話なかったっけ? w3m 0.5.1 で xtermのタイトルバーの日本語タイトルが文字化けします。 コマンドは↓です。 env LANG='ja_JP.eucjp' xterm -lc -e /usr/bin/w3m -title -B 日本語のどの文字コードでも文字化けします。 ktermでは文字化けしないのですが。 こういう症状がでた方、いますか? うちは日本語タイトルは Unnamed Window って出るなあ。 wm は openbox だけど、だからかな。 gc-7.0を$HOME/localにインストールし、 w3mのconfigure時にLDFLAGSとCPPFLAGSを設定しても、 libgcを見つけてくれない。。。 >>34 レス、ありがとうございます。 タイトルバーの日本語表示にはウィンドウマネージャーにも関係するのですね。 いくつかウィンドウマネージャーで試してみたところ、日本語表示の可否はこんな感じでした。 IceWM, fluxbox : kterm ○ xterm × window maker : kterm × xterm × w3mの内部コードはEUCなのでしょうか。 そのために utf-8 な xtermでは日本語表示に支障があるのでしょうか。 wm は LANG の encoding を期待してて、 xterm は utf-8 でタイトルを送ってるとか? その場合、xterm の luit がタイトルハックコマンド(?)のタイトル文字列を utf-8 に変換していることになるか。それはないかな。 まあ、わからんけど。 >>37 w3m の内部コードは特殊だけど端末(xtermなど)には Locale に従ったコードで送っている。 国際化されたウィンドウマネージャーで動作しないなら、xterm のバグでしょう。 luit は xterm のタイトル表示機能には絡まないと思うので、xterm は内部コードの UTF-8 でタイトルを表示しようとしているのかも。 xterm (に与えられた) Locale を、 xterm 内のシェルから起動された w3m が正しく知り得るのか疑問な気がするので、 一概に「xterm のバグ」とは言い切れないような気も。 >>40 Locale は環境変数なので継承されるはず。 % env LANG='ja_JP.eucJP' xterm +lc -e w3m -title -B でタイトルバーに日本語表示でるよ。 % env LANG='ja_JP.eucJP' xterm +u8 -e w3m -title -B % env LANG='ja_JP.eucJP' xterm +u8 +lc -e w3m -title -B でも出る。ただし端末表示の方はそれなりの encoding で表示されるが。 >>38-42 たいへん勉強になりました。 w3mの内部コードではなく、xtermの方を調べています。 とくにluitについて。 >>42 ありがとうございます。 3つともタイトルバーに日本語がでました。 ページは文字化けしてしまいましたが。 w3m0.5.1ユーザーです。 一般のウェブブラウザにある「戻る←」「進む→」に当たるコマンドというかキーが ヘルプを読んでも見当たりません。 Ctrl-vだとPageDown Esc-vだとHTMLのソースが表示されます。 どれがそれに当たるキーなのでしょうか? H でヘルプがでるからそれをみればいい(PREV と NEXT) もし割り当てられれてないようなら ~/.w3m/keymap で割り当てればいい form に入力後 NEW_TAB して一方のタブで form の入力内容を変更すると 他方にも反映されるのはどうにかならんかな。 なかなか不便だ。 >>47 ホントだ。バグだなぁ。reload するといい。 NEW_TAB のたびに Opening socket... とかは勘弁。 kterm -e w3m のようにして起動した時の C-zを無視してほしいです。 時々うっかり固まらせてしまい大ショックです。 あるいは何かいいworkaroundを御存知ないでしょうか。 質問です. $ w3mman ls とすると,エスケープシーケンスがうまく解釈されず下記のようになってしまいます, 何がまずいのでしょうか? [1m名前 [0m ls, dir, vdir - ディレクトリの中身をリスト表示する [1m書式 [0m [1mls [ [4m [22moptions [24m [1m] [ [4m [22mfile... [24m [1m] [0m なぜか w3mman w3mman だけは正しく期待したとおりに表示されます. >>54 普通、man はバックスペース(\010,^H)で太字やアンダーラインを表示するので、 w3mman はそれだけ解釈して、エスケープシーケンス(\033[1m 等)は解釈できない。 w3mman w3mman が OK ということなら、妙な環境で catman によるフォーマット済み man ファイル(/usr/share/man/cat1/ls.1 あたりか)が出来ているのかな。 Cygwinでw3m使うには、どうしたらいいのでしょうか。 はい。今夜やってみます。ホルダーはlocal/binでいいですか? 7MB以上の大きいhtmlを読み込むと segmentation fault で落ちるのですが こういうもんでしょうか? >>56 コマンドプロンプトだとまともに動きそうにないので、 Astec-Xとuxtermの組み合わせで動かしてます。 X Serverは別にAstec-Xじゃなくても似たようなもんだと思います。 LANGja_JP.UTF-8にしているとオプション設定画面で文字化けするので、 en_US.UTF-8にしています。 バッファ選択メニューにてmigemoが使えるようになるのは 何世紀後の事でしょうか ttp://megaui.net/oss4art/wiki/AAlib >AAlib は任意の画像をアスキーアート (Ascii Art) に変換・表示するためのライブラリである。 なるほど。 いや、けっこうマジで。 ダウンロードしmplayerで視る手順が、w3m上で出来んすかね。 現行のyoutubeダウンローダを見ると、flashは要件じゃないと思うんですよ。 youtube-dl とか? そこまで分かってるならなんとかなるんじゃない? いや、そこからが分からんくて、あれこれ調べてるんですよ。 拡張子の無いurlをアプリケーションに渡すことが出来ないと分かれば、emacs-w3mやfirefox等他のブラウザを使うと思います。 w3mの他ブラウザ起動機能で視てるのですが、確かにこれが一番現実的なのかもしれない。 ん、いやなんつうか emacs-w3m はキー配置は若干違うけど、レンダリングは w3m と一緒でしょ? で、 w3m-filter.el を使えば、 youtube のページ開いたら 動画へのリンクを表示するようなこともできる。 だから、うまく書いてやれば、 youtube の URL 開いたら 自動ダウンロードして mplayer で開くは自動化できると思う。 mplayerに渡すようなlocal-cgiを書くのが手っ取り早いんじゃないの 俺は以前はそうしてた え"。 今いちlocal-cgiと結びつかないんですが、 http://jp.youtube.com でload mycgi.cgiなどとやるということ? local-cgiってそんな使い方ができるのか。 ありがとう。 >>74 URLの頭にy:とか付けてurimethodmapでシェルスクリプトに渡してた。 スクリプトの内容は、一旦wgetしてパラメータのある行を抜き出し、 それを元にmplayerに渡すURLを生成するっていう作業。sedとかawkで事足りた。 自動読み込みじゃなく、U押してC-aしてy:っていう手間は要るけどね。 youtubeのファイルダウンロード&再生を >>75 を参考に local.cgi でつくってみました。 もうひとつ、こんなふうに ↓menu からシェルスクリプトに渡す方法も。 EXTERN_LINK "y" "uxterm -e w3m-youtube '%s'" local.cgi の方は、xine の再生がおわる前に、 echo "w3m-control: BACK" が処理されて?、前のページにもどってくれないのを直せませんが、 すごく便利になりました。 方向性を示してもらって感謝。 誤解があるとナンなので言っておくが、77 != 74 77 != 74です。 >>74 のレスを読んで触発された別人です。 >>74 =78の方は具体的にどんなシェルスクリプトにされましたか? こういうちょっとした、w3mから使えるシェルスクリプトは、 検索しても意外とないものですね。 いろいろ作っていても一々公開しないものね。 最近の YouTube に関していえば、 privoxy 等でフィルタをかまさないと まともに見られる表示じゃなくなってる。 ああ、>>75 に礼も言ってなかった。その節は有難うございます。 >>79 youtube-dlでファイルに落として、それをmplayerで表示させてるだけです。 なのでwgetはしてないですが、75のスキームそのまま。 >>81 youtube-dl のこと、ありがとうございます。 最初、ダウンロードに失敗するので試行錯誤したら、 youtube の仕様が変わっていたようで、 自分が使っていた youtube-dl は古いバージョンでした。 対応したアップデート版でうまくいきました。 こういう野良シェルスクリプトも、 examples としてw3mと一緒に配布されたら嬉しいと思うのですが、 外部プログラムに依存していると難しいのかな。 w3mman.cgi で、 "::" を含む名前のPerl のモジュールのマニュアル、 たとえば AptPkg::Cache を見ることが出来ないのですが、 これは仕様でしょうか? $man =~ s:([^-\w\200-\377.,])::g; の行で :: が削られている。 >>85 >>84 です。 どうもありがとうございます。 その正規表現の部分で、 "\072" で表示される ":"はじかないように変更すれば、 名前に "::" を含む マニュアルも検索できるようになるのですね。 まあ、場当たり的に $man =~ s!([^-\w\200-\377.,:])!!g; とでもしとけばいいんじゃないの >>87 そのように変更した w3mman2html.cgi をローカルの /cgi-bin に置きました。 ありがとうございました。 amazonがずいぶん前から見辛いっちゅーか、 w3mだと7スクロールぐらいしないと本題部分に辿り着かないけど、 いいフィルタ自作されてる方、公開してくれないですかね。 64ビット版のfedora8で自前でmakeしたw3mを使っていたら頻繁に落ちました. CFLAGS="-m32 -O2" ./configure でmakeしてやると安定しているので どこかでポインタのサイズを32ビットと仮定してるのかなぁ, などと思いつつ 現在安定しているので放っています. 誰かデバッグしてくれるとうれしいな (完全に他人まかせです) youtube で英語で見られる方法を教えてほしい。 強制的に日本語になりやがる。 Locale(LC_CTYPE) に従ってシステムの文字コードを設定をNO でhttp://uk.youtube.com/ にアクセス Accept-Languageじゃねえかい? patch送ったら取り込んでもらえるんですかねえ?@ML クライアントのIPアドレスで国を判断してるんじゃないかなあ。 YouTubeだけじゃなく例えばwww.google.comでも、 telnetでHTTPを直接しゃべってみると、 リクエストヘッダーをHost:しかつけなくても www.google.co.jpにリダイレクトされるんだよね。 >>96 全然駄目じゃないか。 Accept-Language も関係みたいだな。98 の言う通りか。 >>100 それでOKだった。ありがとう。 でも www.youtube.com でないと困るところが色々とあるんだような。 こんな仕様にして誰が嬉しいんだ。 w3m-0.5.2-r1/doc-jp/README.dict.bz2 にあるように google_q='http://google.com/search?btnG=Google&q' とかやってる local CGI って使ってるひと多いんかな http://tv.yahoo.co.jp/ にアクセスすると現在放送中の番組一覧が見れますが デフォルトでは東京の番組になっています。 Firefox などではフォームから地域を選び テレビ・ラジオ番組表にとんでから戻ると 選んだ地域の放送中番組一覧が見れるようになりまが、 w3m では東京に戻ってしまうのは何故でしょうか? 俺のところでは戻らない。 w3m を一端を終了させ、再度起動アクセスしても非東京になっている。 どうせクッキー受け付けない設定にして忘れてるとかだろ cookieといえば、受け付けた時に 1エントリにつき1秒間待たされるのが嫌。'j'押しっぱなしにするけど。 なんでハードコードされてるんだろ。 後から'='とかC-kとかで確認だってできるのだし。 あ、emacsみたいにw3mからのlogを溜めておくバッファがあってもいいかも。 じゃがつながらねぇ じゃ、がつながらねぇ <<104 s/google/www.google/ でレスポンスが 2/3 ぐらいになるという話。 3/4 ぐらいだったかな。 >6をやってもgmailにはアクセスできないみたいなんだが。みんなは見れるのか? サーバ変更が起こった時のw3m-2ch.cgiの動作がよくわからん しばらく放っておくといつの間にか変更認識されてるみたいだけど 強制的に認識させる方法ってある? >>113 板一覧を表示すると新しいサーバを認識する w3m-2ch.cgiの中身って凄いな 作者のマシンにはPerl入ってないのか? Debian パッケージ の w3m 0.5.2-2+b1 を使っています。 xterm や mlterm 上で w3m を起動しても、 M キーが一切、反応しないのですが こういう症状があらわれた方、いらっしゃいますか? デフォルトの EXTERN も、keymap で適当に設定した関数 EDIT なども無反応です。 TEXT としては "M" を打ちこめるのでキーボードの故障ではないと思うのですが… 使用するエディタやブラウザの設定が変なんじゃないの w3mって~/.mime.typesをちゃんと読みます? ファイル最後尾にエントリを追加しても機能しないが、中途に入れるとヘルパーが動いたりで、何がナニやらワケが解らんのですが。 >124 変更した後、設定パネルでOKを押すかw3mを起動し直すかしないと 反映されない気がする そりゃ起動時の初期化で処理されてるもの。REINIT を実行すれば 再起動する必要はない。適当なキーに割り当ておけばいいと思う。 …いや、再起動しても >>124 な状況になってることが不思議なんでしょ。 途中の行に変な記述でもあるんじゃない? まっさらなmime.typesから始めてだんだん付け加えてみたら mv ~/.mime.types ~/.mime.types.BAK しても、~/.w3m/mailcap に書かれた外部プログラムが起動されることを発見しました… オプションパネルのエントリは、 grep mime .w3m/* .w3m/config:mime_types ~/.mime.types だけなのに… いや、 config の mailcap がどうなっているか調べなければ意味がないのでは… うろ覚えだけど、設定ファイルが無い時は$PREFIX/etcあたりにある mime.typesが使われるんじゃなかったっけか。 それも無い場合は、html,zip,jpgなど代表的なものについては 内部でデフォルトの推測MIMEタイプを持っているんだったような。 と思ったけど、$PREFIX/etc/mime.typesの方は単に オプションパネルでのデフォルトというだけなのかな。 後者についてはurl.cを眺めてみたらそれらしいリストがあった。 w3m でニコニコ動画が見れてる方っていらっしゃいますか? もちろん動画自体は仕方ないですが、うp主コメやマイリストくらいは見たいです。 まず、デフォルトのままだと 406 Not Acceptable となってしまうので、 オプションで Accept: に application/x-httpd-php を追加して 認証前の画面までは辿り着きました。 しかし、そこでメールアドレス&パスワードを入れても認証が通りませんでした。 どなたか認証通って見れたという方、あるいは見れない理由のわかる方、 いらっしゃいましたらアドバイスをいただきたく。 del.icio.usもdelicious.comになってからw3mではろくに使えなくなってしまったね <button>タグへどう対応すべきかってのが何年も前にMLで議論になって決着つかなかったんだっけ… >>134 確かニコニコ動画の cookie の仕様が w3m的におかしくて, 弾かれるんじゃなかったっけかな. 手元の w3m では /mylist/XXXX や /watch/smXXXX のページは見れます. もちろん動画は再生されませんがw 弄ったのは, cookie.c の special_domain[] に ".nicovideo.jp" を追加したことぐらいだと思う. もしかしたら他のとこも弄ったかも. 関係ないけど, 最近は w3m での google の検索結果が大変見易くなって助かる. YouTube も privoxy やその他で頑張ってきたが、ますます Ajax 化が進んで 対処が難しくなってきた。チャンネルトップのコメントが画像が表示されると 消えてしまうのだが、これは w3m のバグ? >>136 ありがとうございます。 special_domain に追加でうまく見れるようになりました。もちろん動画(ry 汎用 JP ドメインで同じようにはまるケースが多そうな気もするので、 設定でうまいことできるようになるといいなあ。 javascript 使いまくりのサイトが当たり前になって、色々と面倒なことが増えた。 foo_bar_baz_quu みたいな感じで、 もっと大量にアンダースコアのある文字列を検索しようとすると、 対象文字列は存在するのに見つけられません。 migemo無しでコンパイルしており、 文字列にはメタキャラなど含んでないのですが。 ちなみにignore caseを切り替えて試してもNGでした。 less内での検索なら大丈夫なのですけど。 bm2menu.pl を元に改造したスクリプトで、 ブックマークを入れ子状のメニューにしてみたらすごく便利になりました。 >>143 ttp://island.geocities.jp/aki_101/bm2menu-nested.pl.gz 初めてのプログラミングのようなものなので 至らぬ点はどんどん手を入れてください。 入れ子構造の指示書は別ファイルで作ってください。 Google の検索結果を w3m で表示すると、 一件毎に 100バイトの謎の英数字の文字列が付いてる。 何だろこれ? GoogleはUser-Agentの設定とか次第でレスポンスデータがいろいろ変わってくるので、 そのあたりの詳細も併せてよろしくです ええと具体的に言うと・・・って、今見たらそんなの全く表示されてないや。 何か幻でも見てたのかもしれません。すみません、スルーしてください。 質問です。よろしくお願いします 環境:Ubuntu8.04 w3mはSynapticから導入 状況:システム関数を利用してw3mを呼び出し、Google検索を行うプログラムを制作中 w3mを呼び出すプログラムを端末から実行すると 端末上に"Received cookie: SS=Q0=5a-S44GE"といった 内部処理が表示されてしまいます。 もしこれを表示させないようにする方法があれば、ご教示願います。 http://www.google.com/reader/m/view/ にアクセスすると、 (Download)Save file to: index.html になってしまうんだが、どうにかならないの。 FreeBSD上で0.5.2を使用しています。 リンクの上で"a"キーを押してリンク先をファイルに保存した場合に、ファイルの中身が 壊れている?ような出鱈目なバイナリデータになります。 リンク先をwget等で取得した場合は特に問題ありません。 どこか設定の問題でしょうか?基本的にデフォルトの設定のまま使用しています。 >>152 そのコンテンツがgzip圧縮した状態で送られている(Content-Encoding: gzip)可能性がある ファイルを「.gz」拡張子をつけて保存した後gzip -dで解凍してみてください 念のため保存したファイルをfileコマンドで確認してもらえますか。 gzip云々て表示されていれば>>152 の方法でうまくいくはず。 >>153-154 ありがとうございます。ご指摘の通りgzipファイルになっていました。 しかし、仕様と言うことなのかもしれませんが、"a"キーで保存した場合はデコードした状態で 保存されて欲しいような、、、 ps とりあえずencodingの所にxxxとかダミー文字を入れてgzipを受け付けない様にすることで 回避しました(ブランクは駄目みたい?) みなさん migemo_command はどう設定されてるんです? migemo or cmigemo ? Unicode環境だとたまにsegmentation faultで落ちるということに、 最近UTFにチェンジして気付いた 以前マックのターミナルでよく落ちていた時は 「まあマックのターミナルのせいか」と思っていたんだが… >>159 うちのLinux+UTF-8じゃ特にSEGVするようなことはないな。 素の0.5.2じゃなくていくつかパッチ当ててあるけど。 MLってもう1年近く投稿ないんだがもう誰も面倒見てないんだろうか……。 >>151 のように独自に改造してる人はいるんだけどねぇ… twitterが表示されなくて散々苦労したのでメモ。 オプションの「受けつけるメディアタイプ(Accept:)」のところに text/htmlを追加すればいいらしい。なぜtext/*じゃ駄目なんだ…。 なにこれ。 >2ch書き込みはleafpadでできるようにした。/usr/bin/viでダミーファイルが入ってるのでviユーザは注意。 結構よく segmentation fault するよね 変なパッチとか当ててね? 普通に使ってる分には全然だったけど 野良パッチ当ててUTF-8に移行したらBACKするだけでホイホイ落ちるようになって困ってる textareaをPOSTすると落ちる。 ような気がする。 あー slashdot とか投稿して B で戻ると落ちるってのは 俺だけじゃないのね >>169 ttp://www.sic.med.tohoku.ac.jp/~satodai/w3m-dev/200708.month/4286.html このパッチを当ててみたらどうだろうか? textフォームに入力→別のページに移動→元のページに戻る でtextフォームが化けるのが気になってたが、それと原因は同じってこと? 確証はないけど素のw3mだと>>171 のように化けるだけで済むみたいだけど、 何かパッチが当たってると>>167 のように落ちることもある感じ。常にではないけど。 ttp://www.sic.med.tohoku.ac.jp/~satodai/w3m-dev/200403.month/4049.html のUCS文字幅パッチ(w3m-cvs-1.914-ambwidth.patch)とか当ててない? >169 ですが,FreeBSD の ports 由来なので こんなのがあたってるくらいです 366 Jun 9 2007 patch-file.c 19707 Apr 23 2008 patch-w3mimg_fb_fb.c 365 Apr 23 2008 patch-w3mimg_fb_fb.h 893 Apr 23 2008 patch-w3mimg_fb_fb_w3mimg.c ttp://www.alib.jp/files/ PATCHFILES= w3m-0.5-version-xhtml.patch >>170 おー落ちなくなったみたい、かなり助かった 話は振ってみるもんだね >>172 そうそうそのパッチ でもこれ当ててもscreenとの併用は駄目なんだよなー screenにcjkwidthパッチも当ててるんだけど >>173 俺のとこはDebianで>>172 のUCS文字幅パッチ当てて落ちてたのが、 >>170 のパッチ当てて落ちなくなってた。FreeBSDはわからない。すまん。 boehm GC関係という話もある(手元のは 7.1)。 ttp://mi.med.tohoku.ac.jp/~satodai/w3m/bbs/spool/until0000.html#20070920103255@w3mbbs 数年リリースないけど>>170 みたいなバグフィックスをまとめたリリースしてほしいな。 screenをtmuxに替えてみたらUTF-8環境でのw3mの動作がかなり良くなった 長年慣れ親しんだ組み合わせだけど、乗り換えるか… w3mもjavascriptとかは諦めてるがテキストブラウザだから文字部分だけでも頑張ってほしい w3m -dump < hoge.html としたらhtmlがそのまま表示されてしまったのですが、 標準入力から読み込んだhtmlをフォーマットして表示することはできないのでしょうか? >>177 w3m -T text/html -dump < hoge.html /検索で例えばeで検索して éやëのようなアクセント記号のついたeにも一致するようにはできないでしょうか? 洋サイトで検索する時は/p.ginaのように.でごまかしてますが何かと面倒です migemo_command にそういうのを指定すればいいんじゃない? 関係ないけど netrik って使ってる人いる? 久し振りに試してみたら文字化けしたような画面が出た。 前もこんなんだったような気がするな。 ttp://pc12.2ch.net/test/read.cgi/unix/1105721627/602 602 名前:名無しさん@お腹いっぱい。[] 投稿日:2010/05/11(火) 00:58:11 ubuntu10.04なんですが、w3m-img入れても端末上で画像表示しないのですが、何か設定とかあるのでしょうか? bookmark.htmlをUTF-8にしたところ、ADD_BOOKMARKで Title: [:asahi.com[A1][A7]$(D+E(B[C6][FC][BF][B7][BC][CE][C2][AE][CA][F3][A5]$(O+`$(D89(B[A5][B9][A5][B5][A5][A4][A5][C8] ] のように日本語が文字化けするようになってしまいました。 (EUC-JPに戻す以外で)直す方法はないでしょうか? Linuxではディストリ毎に対応されてるぽい。 ↓はDebianの中の人。放置状態のバグが多くて泣ける。 ttp://www.sic.med.tohoku.ac.jp/~satodai/w3m-dev/201007.month/4317.html もう元々の開発者はみんな離散してしまったんだろうなぁ。 Githubの方に個人がCVSから変換したレポジトリがあるからそれ使えばいいのに。 Firefox2なんてもう化石なのに、これだけ放置されてるw3mがまだまだ使えるのは それだけ良く練られた道具だったということではあるんだろうな 派手な機能追加はしなくていいから、保存的なメンテナンスだけでも態勢が整わないものか >>187 レンダリングは俺には不都合ないんだがクラッシュバグは直してほしいな……。 githubのレポジトリって白い弾幕の人の?この人もGoogleJapanなんだな。 w3mのメンテしてた人もGoogleJapanだからその線で何か連携取れないものか。 >>189 linksとかelinksとか触ってみたけど結局w3mに戻ってきたな。 >>190 そう、その人。Googleの人になってたのは知らなかった。 どうみてもFirefox2の方が高機能だろ、おまえみたいな馬鹿吐き気がする firefox2との機能比較の話題を思わず探してしまった。 CVSの方に大量コミットktkr ここまで長かったなぁ…お疲れ様でした やっぱアドバイザリは効くなー しかし異人さんばかりだな、スレで文句言ってただけの日本人としてはちと恥ずい m17nで頑張ってるテキストブラウザはそれだけ貴重ということか picture は対処できますが flash を認識させるのは 個人では無理でした… うpして使ってたら↓こんなん大量に出ますた(今まで一度も見たことない) GC Warning: Repeated allocation of very large block (appr. size 790528): May lead to memory leak and poor performance. git に取り込んで手許でいじったのをぼちぼち整理しようかと、昨日 cvs update したら ぞろぞろ出てきて驚いた。 >>199 伊東さんじゃないの >>199 ,200 あ伊藤(aito)さんではないほうの伊東(hito)さん。 今MLに書いてるのもあ伊藤さんではないのほう伊東さん。 >>202 Debianからきてるパッチの中には機能追加もあるようだよ。 CVSの方でambwidth正式採用キタ━━━(゚∀゚)━( ゚∀)━( ゚)━( )━( )━(゚ )━(∀゚ )━(゚∀゚)━━━!! ambwidth パッチのせいか、<li> の頭に付く記号が・□☆などで代替表示されていたのが、 *+o などの ASCII 文字で表示されるようになってしまいました。とりあえず以前のような 表示にしたくてオプションをいじってみたのですが、どうもうまくいきません。 判る人がいらっしゃれば教えてくださいませんか。表示用文字コードは EUC-JP にしています。 なかなか UTF-8 に全移行できない… え。 うちはeucだから関係ねーと思っていたが、影響出るのっ!? >>208 テーブルやメニューの枠に graphic 文字を使う: YES ある種のUnicode文字を全角にする: NO これで・□☆にならないかな。 後者をYESにすると前者がYESでも*+oになる。バグかな? >>209 私のように今までの設定によっては影響が出ますね。 あと UTF-8 なサイトで表示できなかった文字も見られるようになったり。 >>210 その組み合わせでも駄目ですね。ただ、上の設定を Yes (graphic_char=1) にすると -dump の結果はこれまで通りの・□☆などに置き換わっています。 graphic_char はずっと 0 で使っていました。設定画面上では、7 月以前は「No」、 最近のマージで一旦は「Yes, but only charset specific」 になりましたが、 ambwidth パッチマージ後の整理で再び「No」に戻りました。 7月以前は「No」でも罫線が表示されていたので、「Yes, but only charset specific」で 意味的に正しくなったようです。ただ、「Yes」でも「No」でもリストの頭は ASCII 表示に なりましたが… 最新の状態で graphic_char=0 だと、罫線もリストの頭も ASCII 表示なので、 バグ修正前とではまるっきり反対になってしまいますね。 CVS 先端では問題が解決されているようです。感謝!! これを機会に文字コードやフォント周りの設定を見直しています。 おぉ, 久々に見てみたらw3m更新されてるのね 0.5.2になったとき64ビット環境でコンパイルしたら割に不安定な感じで しょうがなく CFLAGS="-m32 -O2" ./configure してたんだけど 64ビットでも安定してくれるといいな ちなみにどんなところが不安定だったんすか? ワシはあまりマニアックな使い方をしないせいか、そう感じたことはないです。 何かよく分かんないタイミングで急にセグメンテーションフォルトで落ちてた気がする タブとか全然使わずに結構沢山のページ見てbackするときに落ちてたような気もする 今, 2ch見ててbackじゃないけど落ちた... >>216 >>166-175 あたりの問題が発生していたのかな? 最近のCVSで正式に取り込まれたので今は大丈夫なはず。 >>218 いや, >>217 は最新のcvs版だけど落ちた... まぁ, fedora8という骨董的os使ってるんでgcが古すぎるのかも知れない うちの場合, 64ビットでコンパイルするときのみ不安定なんだよなぁ... そういえば最近急にGCのエラーを良く見るようになったな cvsの最新版引っ張ってこようとして http://d.hatena.ne.jp/rubikitch/20071022/1193020111 ここみて気づいたんだけど > http://w3m.sourceforge.net/ > > に書かれている > > cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/w3m login > (hit Enter to the password request) > cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/w3m checkout w3m > > は間違いで、 > > cvs -d :pserver:anonymous@w3m.cvs.sourceforge.net:/cvsroot/w3m login > (hit Enter to the password request) > cvs -d :pserver:anonymous@w3m.cvs.sourceforge.net:/cvsroot/w3m checkout w3m > > である。 これ直せる人直してくれないかな CVS 先端でタグ要素が増えたけど </iframe> が抜けてるような気が。 iframe といえば、view_unseenobject=1 のときに存在のわかる 既存のパッチは取り込まれないのだろうか。 広告が多いとうるさいけど。 やっと規制解除された。 >>219 fc8のgcって7.0かな。w3m連絡帳でもそれで落ちるって投稿があるね。 >>222 ttp://www.sic.med.tohoku.ac.jp/~satodai/w3m-dev/200310.month/3991.html のパッチかな。さすがにCVS HEADにはこのままでは当たらないね。 mlの中にはまだまだ取り込まれずに埋もれてるパッチがありそう。 >>223 はい, 7.0です. 32ビットなら安定してるんでとりあえず32ビットでコンパイルして使ってます. 256色patchは取り込まれてないんだろうな〜。 取り込まれないかな〜。 pastebin.com でテキストを download すると gzip になってて、HTTPヘッダに Content-Encoding: gzip Content-Transfer-Encoding: binary が入ってるんだけど、 ttp://emacs-w3m.namazu.org/ml/msg02339.html の問題とかってまだ直ってないのかな。 普通は Accept-Encoding に gzip を入れてないのか? migemo検索で1、2文字程度入力した時点で、 ひらがなとかが検索されなかったりするのって、仕様? a、i、ka、sa、taとかがmigemo検索されなくて、naとかがmigemo検索される。 migemoが生成するパターンが長いとmigemo検索されてないような気がするけど、 負荷軽減のために、その条件で通常検索するようにしてるのかな。 むしろHTML5が対応しなきゃいけないんでねーの。 cygwin環境だとw3mが使えないの? なんで? コンパイル時にmakefileのタブ消すのがめんどくさいです http://ja.pastebin.ca/ で submit して Your paste has been accepted and added to the database. You will be redirected to it momentarily. The URL for it is: とか出てるページに行った後に放置してると 繰り返し submit されるな。うっかり大量に post してしまう。 <meta http-equiv="refresh" content="7;http://ja.pastebin.ca/XXXXXXX " /> ってタグがあるから、content の URL を理解できてないのかな。 というかこれ正しくは <meta http-equiv="refresh" content="7;URL=http://ja.pastebin.ca/XXXXXXX " /> なのか? pastebin のサイトが誤ってるのか? 教えてください! w3m って、普段は { や } で隣のタブに切り替えることが出来ますよね でも、リンクにアクセスして、ページを読み込む最中には他のタブへ切り替えたりする事が出来ないですよね ページを読み込みながら他のタブに切り替えて操作するにはどうすればいいですか? それとも、そもそも不可能な事なのでしょうか? w3mのタブ機能の代わりに 外部ブラウザとしてscreenなどで別のw3mを起動して使うようにすれば擬似的に実現できないこともない つまり、w3m をいくつも起動して、それを切り替えるっていうことですね ありがとうございます マルチスッドレの切り方がそういう作りに成ってないからな。 しかしscreenは要らんやん。普通にkterm複数開いてるだろ。 同じ画面のまま切り替えるし操作も一定だからタブっぽいかなあと ionなんか使うのもいい感じ terminal でもタブの切り替え出来るやつがあるので、(gnome-terminal)それを使えば大丈夫ですね 問題ってわけじゃないけど xtermも国際化されてだいぶたつし そろそろ乗り換えていいんじゃね、と。 UTF8はともかく EUC-JP の範囲内で使う分には 慣れ親しんだ kterm で十分というかこっちのほうが便利なんですよね いまちょっと見てみたけど xterm -fa fixed -cjk_width なんかで 日本語表示は出来たみたいだけど文字間隔が超開いてしまって ascii も全角な勢いになってしまったし その辺の設定ってよくわからんですなー (ぐぐると「kterm は xterm の日本語鞄」みたいなページばっかり引っ掛かるし) 以前 mlterm の設定はすこししてみたけど 敢えて乗り換える必要性も感じないまま kterm に戻っちゃいました mlterm って単一プロセスで複数の pty セッションを立ち上げられるんだよね kterm で複数開くより mlterm の一プロセスで複数開いたほうが メモリの使用利用が少なくていい感じ 最近 Twitter のつぶやきが見れないのなんとかならんかなあ。 「#!」が Ajax で便利なのはわからないでもないけど、 w3m みたいなブラウザは置いてけぼりだあ・・・orz >>250 ホスト名の先頭にm. を追加すればおkだが proxyとかで自動化しないと面倒くさいよね… へーそうなのか。というか >162 なんて情報もあったのか… orz 若干不便ではあるけど dumptwitter なんてshell script で w3m $@:s_//twitter.com/_//m.twitter.com/_ # zsh 的に とかやればみれるのかな? おっと見えた! (m. より最初から mobile. なのか?) っていうか zsh の関数辺りでやっちゃうのもできるかな? >>247 フリーのbdfフォントで環境を作っていると、組み合わせをたくさん登録できるktermが便利。9ドットから24ドットくらいまで5通りほど登録していた。 >>162 おぉ、すげぇ。 よくこんなの見つけたなぁ。 自分は privoxy で延命させてるような感じ YouTube は w3m が一番使いやすい環境になってしまった >>253 自分もやってたね。コマンドラインからフォントを切り替えたり mlterm を使うようになってからも同様なことをしてたけど 結局ほとんど固定で長らく使うことに ぼちぼち UTF-8 環境への移行も考えないといけないから、 この間久しぶりにフォント周りをいじったけど 結局、自分好みに統合しないと使いものにならん点は同じか >>162 text/* じゃダメなのか…バグ? だとしたら twitterサーバの? あれ、じゃ他のブラウザは text/html を送ってるのか? >>253 kterm の時はサイズ一択で fixed + 12px フォントを使ってたけど、 xterm で fontList ないから、 ~ 以下に fonts/ 作って fixed + 12px をまとめた フォントを入れてるな。 xterm でちょっとどうかなと思うのが、○とかの全角記号が半角になってしまうこと。 あーでもこれは LC_CTYPE=ja_JP.UTF-8 とかの問題かな。判らん。 複数立ち上げて使うのがw3mスタイルだけど そうなると履歴やブックマークの共有機構が欲しくなるんだよね >>255 >YouTube は w3m が一番使いやすい環境になってしまった kwsk 俺はscreen中の母艦たるw3mが殆どやりくりする方式だな >231 あ、ここw3mのスレか mnewsと間違えてた 0.5.3 リリースおめでとう >>258 privoxy のフィルタでおおよそ整えた上で、それでも足りない部分は mailcap から外部プログラムを呼び出して処理している 投稿者別の動画リストが見られなくなってからは検索周りの cgi を書いた あとは、再生やダウンロード、データベース操作などの要りそうなものは キー一発でできるようにしている。でも、最近あまり見なくなったなあ 初期の YouTube が w3m に優しいサイトじゃなかったら、こんなことを やってなかったと思う。テキストブラウザでもある程度までは見通しを良く してほしいよね。マウス片手でお気楽にポンポンとやるのも悪くないけど 0.5.3キター C++のコンパイラ入れろって言われるんだけど、そんなの使ってたっけ? Twitter の件で思ったんだけど、 GET 直前で URL を書き換えたり、画面レンダリング直前で HTML を書き換えたり、 みたいな処理をユーザがスクリプト言語で定義できるフックがあると良さそう。 >>265 ローカルCGIでいいやん。 ところで、teacup.com あたりを新しいw3mで出すと 掲示板の内容が一文字ごとに改行が入っちゃったりしたのだが、 これってウチだけ? ウチもならんな local CGI でそんなことできたっけ 普通 local proxy とかじゃない?おれはやらないけど あう。起動しなおしたりしたら、いつの間にか治ってたです>表示。 設定ファイルでも無いのか。うーむ。お騒がせしまつた。すまそ。 そうそうローカルCGIとwgetあたりで繋いだらやれませんか? 多分、普通は透過的にしたいだろうから g: とか file:///cgi-bin/ とかじゃなくてそのまま http:// で アクセスしたいんじゃないかな。 リンク辿る時に URL 打ち直すとかはしたくないだろうし。 (打ち直しをマクロとかにすればいいのかもしれないけど。) それだと local CGI では不能ではないかと。 個人的には proxy とか使いたくないから w3m 単体でできればいいけど。 (単体でなくてもいいけど) そうは言っても proxy をかますのが現実的な解だろうね HTML の書き換えも mailcap を通して好きな言語で好きなようにやる >>271 そうなんですよね。 ウェブページにある Twitter のリンクを普通にクリックして普通に見たい。 とはいえ proxy 立てるのもなあ、っていう。 とりあえず Twitter のページを mobile.〜 にしてリダイレクトする local CGI 書いて、 keymap でキーに割り当てて使うようにしてしのいでみました。 つまりuserjsのw3m版か。jsはダメだけどその代わり任意のフィルタ使えるみたいな そうそう、そういうイメージですね。 別に js でも lua でも組み込みスクリプトなら何でも良いんですが。 w3m をハックできるスキルがあったらなあ・・・ レスポンスを受け取ってからの書換えの話だったら $HOME/.w3m/mailcap に text/html; htmlfilter '%s'; x-htmloutput という具合にフィルタを指定とかだね で、htmlfilter を好きな言語で書く でも、これだと大ざっぱ過ぎるよね。htmlfilter で素通し処理を入れてもいいけど やっぱり、必要なサイトのレスポンスヘッダだけをいじって対象を絞ったり リクエスト時にも何かやるために、どのみち proxy をかましたくなるはず なるほど。ページ開くたびに htmlfilter が fork されるのが気になりますね。 >>278 それ前やったけどできなかったよ。 あと .w3m/urimethodmap に http: file:/cgi-bin/foo.cgi もできなかった。 >>280 2年くらいこの方法を使っているけど特には問題ないよ。思ったより使える感じ 先日書いたように proxy をかまして対象サイトを絞ってるけどね ただ、$W3M_SOURCEFILE を書き換えるわけではないから、local CGI の対象に したときに齟齬をきたす場合があるかも。まあ、その場合でもフィルタ側で ついでに直接書き換えてしまえば大丈夫なんじゃないかな いや、直接書き換えてしまうとちょっと拙いか フィルタ型の local CGI だと気を付ける必要があるのは確かだとお思うけど どうも text/html は一般的すぎて対象になってないみたい 自分が実際に使っている mailcap の記述は text/x-filter-html; xfilter '%s'; x-htmloutput で、xfilter の中でサイトごとに場合分けして処理しているのだけど >>278 では text/html で試さずに単純な話にしてしまった どうも申し訳ない 上の例でも proxy でヘッダを事前にいじってるし、素の w3m だけで text/html を透過的にあれこれするのは難しいと再確認することに… >>283 text/x-filter-html 試したけど効かないよ。 と思ったけど proxy でヘッダを事前にいじってるって text/html を text/x-filter-html にしてるってことか。なるほど。 w3m http://vimperator.org/vimperator が出たり出なかったりするんだが、何だこれ? 出るってのはページが表示されるってことだけど。 って思って比較してたら出てる時は Document Type が text/html で 出てない時は application/xhtml+xml だった。 application/xhtml+xml は基本見れないんだっけ? vimperator なんて見んなってことかな? ~/.w3m/mailcap に application/xhtml+xml; cat '%s'; x-htmloutput といった、いつ加えたのか覚えてない対処法があった これは今も必要なのかな 0.5.3からはapplication/xhtml+xmlでもhtmlと同様に 扱うようになったんじゃなかったっけ w3m version w3m/0.5.3 なんだけど表示されない。 <button> タグは対応してないのか…そうか… w3m/0.5.3 on cygwin だと segmentation fault で落ちてまったく読み込めないです。 今まで使ってた w3m/0.5.2+cvs-1.1038 では大丈夫。 >>293 すまそ。 w3m-0.5.3 の ChangeLog みたら 2010-07-25 AIDA Shinra <shinra@j10n.org> * merge ambiguous width patch ( http://www.j10n.org/files/w3m-cvs-1.914-ambwidth.patch ). ってあるわ。 が、しかし。「ある種のUnicode文字を全角にする」をYESにしても、 ☆とかは半角のまんまだったんだ。で効いて無いと思っていた。 良く見たら□■は全角として計算されて、罫線の位置は揃っている。 しかし出力が半角なもんで、やっぱりどうにかしたいんだ。 >>294 ターミナルのほうで対応してないんじゃ? ターミナル何つかってる? >>295 evilvte と urxvt(rxvt-unicode) どっちもターミナルが対応して無いっぽい >>296 urxvt(rxvt-unicode)はロケールに従っているだけだから特別に対応するつもりはない (そういう文字幅オプションはつけない)と作者が言っていたよ。 適当いうけど LC_CTYPE の情報じゃないの? いやそういってるのか。 cygwin でみかけた @cjknarrow みたいなのがあればいいのかな。 じゃなかった幅は w3m が全角として扱ってるけど表示が全角じゃないって話か。 あれそれってフォントの問題じゃね? というか「ある種のUnicode文字」に表示半角文字が含まれてて困るってことか。 <button> support は local で取り込む程渇望してはいないけど 256 color とともに取り込まれることを祈ってるよ。 _twitter_noscript=1がぶっ壊れたようだな twitterの検索が使えなくなった? 少し前だとadvanced searchからならw3mでも行けたと思ったんだけど docomo のF-07Cだと使えそうな。あくまで気がするだけだけど。 Boehm GCが動けばNDKで何とかなりそうな… 以前のスレッド見ると ここに書きこむ時、書き込み&クッキー確認が出たら [書き込む] - 書き込み&クッキー確認ページから一度戻って 再度[書き込む] しろって書いてあるけど、 今は再度やっても書き込み&クッキー確認が出るん?出てるんだけど。 ninjaレベルとかいうのが必要に成ったらしい。 で、ninjaクッキーがβ版の時に作ったクッキーは無効なので、一旦消して作り直せ、だと。 名前欄に!ninja !nanja と入れてみて、!nanjaのepoch timeが正式版に移行した以降でないと無効。 うーん、よくわからんけど次また出たら cookie 消せばいいってことかな。 なんとなく thx. 本質的には w3m というよりも slashdot.jp 側の問題点ですが w3m つかって slashdot.jp ご覧になられている方も 多いかと思いますのでアドバイスなどあればお願いします (FreeBSD スレから移動してきました) とりあえず slashdot.jp が新しくなって w3m では 扱いづらいページになってしまった,というのが問題点 * ストーリー一覧がなくなって w3m で「辿りにくくなった」(致命的ではない) * 50以上のコメントがあると「次」が読み込めない(どこか辿れる?) * そもそも D1/D2 切り替え設定とかそういうのが全然出来ない (設定を辿るとログイン状態が消えたりしてどうにもこうにも…) >>314 > * 50以上のコメントがあると「次」が読み込めない(どこか辿れる?) 昨日はたしか、続きのコメントだか、残りのコメントだかのリンクで 行けたような気がしたけど、 今は「残りのコメントを取得」としてもダメだね。 と思ったら、本家 /. も同じ動作なのか。 ちゃんと要望出さないと、改善されないと思う。 google 検索してそれぞれの候補に +1 する機能があるけど w3m では検索結果に「一般公開で +1 しました」って すでに +1 を押しときましたなメッセージが出るんだが… これってもしかして書いてある通り手当たり次第に +1 を したことになっているんだろうか 「おれっていますげえいいこと言った」と思ってるのかな… やっぱり「すげえいいこと言った」と思ってるんじゃないかw >>256 亀レスへの亀レスになるが、 twitterみたいなmibileに重心置いたサイトは、 text/vn.wap.wmlなんてのも考慮してんじゃないですかね。 webappsフレームワークでも結構サポートされてるし。 >>327 おっちゃんどうもありがとう。 >>328 おっちゃんわしにも解るよう言うてな。 いやだから、text/htmlを追加するやり方じゃ駄目だったの? うまく動かないケースがあるならそれはそれで重要な情報だから、 詳しい報告を聞かせてほしいなと思って。 わかりません。えーん。。。 w3m -T text/html http://www.twitter.com/ ログオンが押せません。えーん。。。 Twitter 大人気だな。 つーかおまいら過去ログくらい見ろよな。 上のリンクの「全部」とかで見れるだろ。 Twitter ネタは前スレまでさかのぼらなくても何度も出てる。 おお、スーパーハカーが降臨! ところで w3m で 406 Not Acceptable になるのは Ruby on Rails? で構築されているサイトが多いような気がする。 久々に w3m-2ch.cgi で 2ch を見てたら、 うまく書き込みできなくなってた(既知の問題?)。 で、ネットを探してたら GitHub で w3m-2ch.cgi を Python で書き直したっぽいソフトを見つけた。 インストールしてみたけど、いまのところ良い感じだわ。 w3m-2ch.cgiで書き込んでるけど、問題ないよ。 依存プログラムの問題じゃね? 忍者レベルとかいうのが導入されたので、クッキーを作り直す必要が有る。 うーむ、opera偽装でgoogleが使えなくなった user_agentをw3mに戻したら使えることは使えるが、1画面目に検索結果が出ない糞仕様にorz ぐーぐる先生はMSIE 5.0を名乗るとw3mに優しくしてくれるみたい mixiにログインできなくなった。 domain=.mixi.jp; なクッキーが原因なのかな。 ありゃま。 「[wrong number of dots] を無視するドメイン」に登録しないと駄目みたいね。 /usr/local/share/doc/以下にあったのhtmlのファイル開いたら途中でロード止まってそのあと終了した ファイルサイズ大きいかったから落ちたのかな? >>347 最近はそういう設定があるのか。 ありがとう、アップデートした。 w3mって凄いね コマンドラインのソフトなんて人生で 一度も触れたこともないゆとりの俺だけど 感動したので記念カキコ 余計なFlashも表示されない、CUIって美しい www上の情報の本質部分が文字であり続ける限りは w3mも至高のブラウザであり続けると思うよ もう10年近く前にw3m-jsが頓挫しちゃったが、Spidermonkeyやnode.js(v8)と連携する形でまた作られないものか。 まあやるとしたらw3mをいじるよりはnode.jsでDOMを加工して出力するプロキシ作った方がマシだろうけど。 HTML5 の <input type="email" > が表示されないから、 https://www.dropbox.com/m/ とかに入れなくなった Privoxy で type="text" に書き換えたくても、https だから無理 type="text" とみなして動作してくれないかなぁ おお、そうか、ssl だと proxy でなんとかは、普通にはできないのか。 >>353 ソースからビルドできるなら、form.cのformtype()定義中の > return FORM_UNKNOWN; を > return FORM_INPUT_TEXT; に変えれば、textとして扱われるよ。 なんか google が w3m にやさしくなったな。 >>357 どこが変わったっすか? わしには変更点が分からんのです。 ほんとだ、少しだけマシになった でも依然IE5.5詐称した方がやさしいな 特定のドメインでだけuesr agentを切り替える機能があるといいのかも あれ? utf-8のオプション無かったですか?? > w3m version w3m/0.5.2+cvs-1.1038, <略> > -e EUC-JP > -s Shift_JIS > -j JIS fedora16に上げて自前でコンパイルしたw3m使ってるんだけど M でfirefox立ち上げようとするとplugin-configがcpu100%使ったままで firefoxが立ち上がらなくなった firefox $1 sleep 1 pkill plugin-config みたいなスクリプト書いて回避してるけどもうちょっとましな 解決策ありませんかね? ごめん & が抜けてた firefox $1 & sleep 1 pkill plugin-config plugin-container のこと? つか w3m 介さないと問題ないの? >>366 plugin-configです. なにやっているのか分かりませんがkillして問題なく動きます. あと, w3m介さなければ普通にfirefoxが立ち上がります. 正直よくわかりません. xterm上でw3mを使っているのですが、 w3m上の文字列をコピーしてエディタにペーストした場合の動作が Fedoraとcygwinで異なります。 Fedoraだと特に問題ないのですが、 cygwinだと1行あたり80カラムになるように文字列の後ろに大量の スペースが付きます。 どこの設定をいじれば、行末のスペースをカットできるでしょうか。 もしかしてxterm側の設定? termcap とか次第でどう表示するのかが変わるってことじゃないですかね >>369 echo a の出力行をコピーすれば w3m だけなのか判るんでないか? 普通のプロンプトの画面では問題ないです。 echo aもそうです。 いまのところw3mだけで発生してるんです。 cygwin で X 上で xterm 動かしてんだよね? ttyrec とかで制御コードとってみれば双方比較できる。 行末で出してるものが違うか。 ttyrecは持ってないのでscriptコマンドで調べました。 原因判明。 w3mの設定で、Color of backgroundの値がterminal以外になってると、 文字がない部分がスペースキャラクタで埋め尽くされます。 Fedoraもcygwinもxtermも無関係。 ttp://okwave.jp/qa/q4617201.html とかみると w3mimgdisplay が cpu load 100% になったりするけど、 これ何なんだろうなー。 HTML みると <img src="XXX" width="0" height="0" /> みたいな img tag があるけど、これの所為かな。 w3mからgoogle検索するとアンカーのhref属性に 直接トラッキングが埋め込まれるようになった firefoxからだとhrefは元のままでonmousedownが付いてるだけなのに うざいことこの上ないな そういや、googleで表示されるURLから「http:// 」が消されているのは w3mの':'封じとしか思えんなw なにこれ一旦 google 経由するってことか。 速度至上主義じゃなかったのか。 つか集めたデータ何に使ってんだ?集めてんだかしらんけど。 もちろん検索の質向上に役立たせていただいております(建前) 正直、集めた情報で最終的に何が出来てしまうのかはあまり想像したくないのだよもん google のこと抜きにしても何かのフィルタをかまして使ってないのか? 素の w3m だけでは見づらく使いづらい Web の世界になって久しい 以前はWEBrickのプロ棋士を刺して使ってたけど どのみちajaxやflashなページとかは全然駄目だしきりがないので最近は火狐と使い分けてる でも情報を集める目的のweb閲覧なら今でも大抵はw3mで間に合っちゃうみたい このごろgoogleの挙動が怪しすぎ・・・日々ページ構成が変化してる 自作串で対応できるレベルじゃない気がする そして3月1日はもうすぐだ 最近のweb検索にはduckduckgo.comを使ってる。 シンプルでw3m的に扱いやすい。 え…script処理でw3m使うが w3mをweb見るのに利用するとかないから… local CGI から mailcap で呼び出されるプログラムに渡る W3M_* な 環境変数が古いページのままなのが困り物 >>394 w3m-control: で GOTO 系を呼び出しても W3M_* が更新されないので mailcap 経由で呼び出されたプログラムではこれらがアテにできない だいぶ昔にハマったことがあったが最近またハマった screen の中で動かしてるとスクロールしたときやタブの切り替え時に画像が消えてしまう。 C-l やカーソルを動かせばまた表示されるので、長年無意識のうちにそれらをやっているが、 一旦意識をし出すとストレスがたまってしまう。誰か解決法を知りませんか。 >>395 それはそういうもんなんじゃないの?つまり local CGI で参照するもの。 とか知らんで言っちゃうけど。 ってか mailcap の program からも見える方がバグな気も。 >>309 >>310 ttp://d.hatena.ne.jp/rattcv/20120302 この場合の w3m の優位性とは... >>396 w3mimgdisplay の描画に delay をかけるのが簡単という意味で現実的でしょう。 私は別window でも描画されてしまう方が気になりますが。 特定ホストを拒否するようにできませんか。 ぶっちゃけ、shinobi.comやanalyzer*.fc2.comなどですが。 まぁ、firefox + ABPとかで巡回すりゃいいだけなのだが、w3mで。 /etc/hosts にてきとーなエントリ書くとか。 この辺で張ってれば ttp://d.hatena.ne.jp/rattcv/20120302 w3mを使ってYahooにログインしようとすると文字認証させる画面に飛ばされます どうやったら回避し、ログインできるようになるでしょうか? >>407 w3mimgdisplayは未対応のようなので、 画像の上でIを押して画像ビューアに表示させる (事前にビューアが設定されてるか確認) 無理なら別のブラウザしかないかも げっ、モバイル版のtwitterもw3mにあまり優しくない仕様になっちまったな… >>410 うわ、マジだ。アイコンのせいでガタガタになってる。 つtwittering-mode 俺ももう使ってないけど。 初心者な質問で申し訳ありません。 w3m でページを見ているときに、 カーソル位置の単語を検索したいとき、 つまり、vim でいう '*' の検索をしたいとき、 w3m で対応する機能はありますか? あれば教えてください! カーソル位置の単語の辞書引きローカルcgiを改造してどうにかならんもんだろうかね。 カーソルをその語まで持ってく労力で /sonotango とやっちゃうけどね これなら日本語もmigemoでいけるし そもそも純正viには、そんな機能無いし。 vimに汚染され過ぎじゃね? そもそも純正viの話は誰もしてないし。 この場合純正viに汚染されているともいえる。 カーソル移動といえば、w3mは w (NEXT_WORD) の動作がポンコツなんだよなあ 教えてください! 検索するとき、大文字小文字を区別するかしないかは "o"キーを押して設定画面にすれば指定できますよね でも、検索する時に区別したい時と、したくないときがあるのです 二種類の検索が出来るようにして、例えば、 大文字小文字を区別する検索 /pattern 区別しない検索 C-/pattern のようにすることは出来ますか? 無視した検索用にキーを適当に割り当てる keymap 〜 COMMAND "SET_OPTION ignorecase_search=1; SEARCH; SET_OPTION ignorecase_search=0" とか keymap C-/ "SET_OPTION ignorecase_search=1; SEARCH; SET_OPTION ignorecase_search=0" って入れたら unknown key 'C-/'とか言われました。 使っている端末でC-/と打ったときに実際に出すコード調べないと C-_が多いけど そういやtmuxにしてからC-hが効かないと思ってたらC-?吐いてたのか keymap C-s "SET_OPTION ignorecase_search=1; SEARCH; SET_OPTION ignorecase_search=0" ってしてみたら、 line 4: invalid command '"SET_OPTION' ってなります・・・ "をとっても、うまく機能しません・・ keymap C-s COMMAND "SET OPTION dayomon" ~~~~~~~ >>429 うまくいきました、ありがとうございます! w3mで使いやすいフリーメールってないでしょうか? 最近はJavaScript満載のところばかりで使えなくて… 55mailとか使いやすかったけど、もうなくなってた >>431 ttps://mail.google.com/mail/h/ vimperator 使ってるのに未だに w3m が並んで動いている。 軽いからかな…うーん、いや… キーボード使う仕事しながら何か検索して、読んでー ってだけの用途ならこれほど快適なブラウザはないからね 最新のw3mを動かすならメモリ16Gは積んでないと emacs-w3m使ってるけどテキストだけなのに随分ともっさりしてるブラウザだよね emacs使ってるけどテキストだけなのに随分ともっさりしてるエディタだよね メモリっていうか、読み込むときに無駄に時間かけてる様に感じるんだよね googleのキャッシュ読み込む時とか、クッキーとかのやりとりですごく時間かけてる 全部読んでからレンダリングしてるからな。perlで書き直した方が速くなるんじゃないかってくらい富豪的なプログラムだし。 >>439 ああそういやクッキーのやりとりで1行ごとに1秒スリープしてるんだっけ 大昔に改造して0秒にしてたから忘れてた クッキーは基本拒否で喰わせるサイトは明示的に指定、 受け付けたときもメッセージを表示しない設定にしてる メッセージを表示している間に裏でダウンロード続行とかやるのが面倒だっただけかと というかこういうのって普通 wait なしだよね。 まあどんなあやしいクッキー使ってるかみときなさいよって意図があんのかね。 今と違って実装された頃はcookieなんてごく一部のサイトでしか使われてなかったからね でもこれオプソだし簡単にハックできるシンプルなソフトなんだから お客様感覚で文句ばっか垂れてるのは格好悪いのも自覚しておこうぜ むしろそっちの方に時代の変化を感じちゃうわん livedoor.com系サイトでいかに糞Cookie食わせようとしてるか w3mじゃないとなかなか気づかないもんだな しかもその状況がもう何年も続いてる お客様感覚の文句というか、感想が並んでるだけのようだが。まあ内心はどうかしらないが。 つか簡単にハックできるってのと公式で対応してるかってのは別の話だよ。 自分で直してても公式で対応された方が都合がいいだろう。 対応してほしいなら公式に要求/開発に参加すればいいんだが。 でも開発されてないならフォークした方がはやいですね。 ハックすればいいって結論になってしまった。 自分でコンパイルできる人は、Cookie取得時の表示を0.1秒にするパッチを作ってる人がいるので 各自ぐぐってみてください 設定でメッセージ表示をオフにすればいいんじゃないの そういう話ではない? >>450 誰でもパッチあてて使えるけど公式リリースに含まれてた方が少し嬉しいってことかな。 俺も前は 0秒にしてたけど、いれなおした時(バージョンアップ時だったかな?)に まあいいかって放置してる。その程度の話。 >>452 そういうことかと思ったんだけど、 けっきょく結論が「ハックすればいい」になってる。 わけわからん。 表示しないのはだいぶ前から標準でできるだろ。 0.1秒だけ表示したいとかならパッチ必要だが。 >>453 あー、惰性で書いた部分が余計だったようで… 前半と違う結だから「でも〜」で「になってしまった」なんだけど、 混乱させたなら悪かった。 >>454 確かにあるね。結構前からなんだ? 表示しててもいい気もするけど消しとくか。 thx. ちょっと質問。 バッファの内容をクリップボードへ放り込むキーマップを設定したいんだが、 どう書けばいいかアドバイスおくれ。 w3mのバージョンは0.5.3、Linux Mint PIPE_BUFとクリップボードへ値をセットするxselやpbcopyを組み合わせれば 良さそうだと思うんだけど、うまくいかない。 あるいは「|」押下後に、こう入力すればいい、とかでも良いので よろしくおねがいします。 こんな感じにしてみたけどうまく入らない場合があるみたい keymap C-c PRINT |xsel -i nkfを挟んだり挟まなかったりで だめだったページがうまくいくようになったり 逆に大丈夫だったページがうまくいかなくなったりして よくわからない ありがとう。 PRINTを使ってこっちでもいろいろ試してみたが、こっちの環境では クリップボードに入る気配もなかったです。 目下こんな感じで凌ごうかと思ってますが、かなり醜い気がするので、 スマートなやりかたがわかったら、教えてください。 keymap \" EXTERN "w3m -dump %s|xsel --clipboard --input" 単純にcatしてファイルに落とすのは失敗しないので xselが怪しいと思ってxclipに変えると うちでは安定して動作するようになった。 yahooニュースが文字化けするようになったでござる ttp://dailynews.yahoo.co.jp/fc/ euc-jpなのにうまく認識してないね。 なんでだろ。 「MyYahoo!に追加」の部分がUTFになってるのかな 文字コードの自動判定を無効にすれば化けないね >>462 xsel -o の処理に問題があるようだ。 selection 取得時の property の actual type が INCR だと incremental retrieval するらしいけど、 このときに続く UTF8_STRING を文字列として扱ってくれないみたい。COMPOUND_TEXT とかもだめそう。 データが大きいと incremental になるっぽいね。 試しにこんなん ttp://ja.pastebin.ca/2246789 で UTF8_STRING は取れた。 xclip の方が多言語対応はしっかりしてるのかねえ。 xsel の方が好きなんだけどなー。 最近migemoが動かないと思ってたら、rubyのバージョンが新しいと駄目なんだな migemo-for-Ruby-1.9というのを入れてやっと動くようになった migemo は偉大だが ruby を使ったのが間違いだったということか rubyは、1.8と1.9が別物過ぎる。名前をrubyから変えるべき。 1.8と1.9の差で名前が変わるならPHPとか何回変わるんだよ… バカバカしいからこの話題は打ち止め >473 そうなんだ せめて ruby 1.8 と 2.0だったらまだ別物感もわかるけど… Jでのスクロール量を増やすにはどうしたらいいんでしょうか。 もしくはlessのC-dみたいなものが欲しい。 先達方はどうしてるんです? >>478 普通に.w3m/keymapに keymap J UP 10 でどうですか? 数字はお好みで >>479-480 感謝 そういう書き方ができたんですね。9j9jやってましたよ笑 screen の中にいるときに TERM=(screen外のTERM) w3m とするとなんか挙動変わったっけ? というか俺がそうしてるんだけど、なんでだったか思いだせない。 screen外は xterm。 実際には TERM=xterm-256color だけど。設定当時は TERM=xterm だったかも。 なんか画像が TERM=xterm じゃないと有効にならなかった気がするんだけど、 今 TERM=screen で試しても表示されるし… 昔は TERM=xterm じゃないとだめだったとかかな。 当時必要だっただけなら消そうかと思うけど、どうだったかな。 まあ思い出せないなら消してもいい気はするけど。 あーそれか。多分そうだ。ありがとう。 実際mouse使ってないから気付かんかった。 termcap とかじゃなくて TERM だけで判別してるんだな。 termcap じゃだめか。よくしらないけど。vim とかはどうしてるんだろうね。 久しぶりに cvs update したら waiting for anoncvs_w3m's lock in /cvsroot/w3m/w3m/scripts/w3mman ってなかんじになる。これはコミッタの誰かに対処してもらわんと駄目なのだっけ emacs-w3mを使っているのですが,日本語でインクリメンタルサーチをしたいのですが, どうすれば良いですか?今ではいちいち,C-sでi-searchを起動して,returnを押して, 単語検索の後に,また,C-sを押してインクリメンタルサーチを実行しています. w3m以外のファイルのあるウィンドウでは,C-sでそのまま日本語でのインクリメンタルサーチが できるのですが... Fedora18+linux conxole+jfbterm+w3mです。 です。 2chとかに投稿すると改行が無くなってしまうのですが、 (改行)2chとかに投稿すると改行が無くなってしまうのですが、 (改行)みなさんどんな設定で使っていますか? >>488 一度クッキーを受け取って書き込み確認画面を経由しなければOK。 >>489 さんきゅ。ほんとだ、改行できる。 >>499 そんなのがあるのか、探してみる。w3m-2ch 昨日から突然、2chの検索画面の検索リストが字化けするようになってしまったのだ。 オプションいじったつもりもないのだが、どこをいじっても戻らない。 2chの検索画面だけ字化けする現象が直せない。 2chトップも、スレの中もちゃんと表示されるのに。 しかも、検索画面の中でも、検索結果部分だけが字化けして、他の部分はきちんと表示される。 なんのこっちゃ? 検索リスト部分だけエンコードが違うのかなぁ? EUC-JP を謳っているのに UTF-8 が混じり込んでいるからだね privoxy で下のようなフィルタをかましてるから普段は忘れている s@<!--\s*Fluct.+-->@@gU s@<td align="right">.+</script></div>\s*</td>@@sU あー w3m https://foo/ で segmentation fault するのか ktermにk14フォントとかいつの化石だよと思ったら 2002年当時の環境を再現とか言う話か 当時でもw3m-m17nならUTF8なページ表示できてたんじゃなかったか もう覚えてないけど 誰か教えてくだちゃい。 Firefoxからは普通にカキコは出来ますが emacs23 + w3m で2chに書き込もうとすると 下記のようなエラーメッセージが出てきて カキコが出来ないだよ。 >2ちゃんねる error 3132 > >error 3132 番のメッセージはなににすればいい? どうすればカキコが出来るようになるか、わかるヤシが 教えてくれたならば、ありがd。 >>504 普通にページを開いて そんでカキコして>>503 に 書いたエラーが出るんだが emacs-w3mだったら ttp://toro.2ch.net/test/read.cgi/unix/1105721627/ あと日本語でおk メーリングリストがどうなってるのか様子を知ろうしたら アーカイブに繋がらんしCVSは>>485 のままだし もはや開発体制は機能しとらんのかな east_asian_width 1 で、文字幅の扱いがおかしいところがあって、例えば、 02DC;N # SMALL TILDE が全角として扱われていたりするので、調べていたのですが、 libwc/map/ucs_ambwidth.map を生成するスクリプトがバグっているようです。 正しくは、こんな感じみたいです。 diff libwc/ambwidth_map.awk.orig libwc/ambwidth_map.awk 27c27 < if (cur - prev > 2) { --- > if (cur - prev >= 2) { 目視で全てのエントリを確認してみましたが、この修正で直っっているようです。 ただ、これでもまだおかしいところがあるようで、 例えば、以下が全角として扱われてしまっているようです。 00C1;N # LATIN CAPITAL LETTER A WITH ACUTE 00A9;N # COPYRIGHT SIGN 引き続き調べてみようとは思うのですが、 誰か原因や対処方法などがわかる方がいらっしゃったらお願いします。 あ、あと、 EastAsianWidth.txt のバージョンが古いのが気になりました。 >>509 east_asian_width 1 オプション「文字コードの設定」で 「ある種のUnicode文字を全角にする」を 有効にしてる場合の動作が正しい方向に変わるのだな。 前後の文字コードが'A'属性でない、 1字だけ孤立した'A'属性の文字が見落とされる、というバグか。 当方はw3mをFBTerm上でだけ使っているので 外観上の直接の変化はなかったが、この手の文字を含むページの 表示の不具合が軽減されたようだ。 BACKコマンドで戻ったときに行末にゴミが表示される、等の不具合。 いかんいかん、話が逆だ。 誤: 「前後の文字コードが'A'属性でない、 1字だけ孤立した'A'属性の文字が見落とされる」 正: 「前後のコードの文字が'A'属性になっていると、 その文字自体の属性に関わらず'A'のグループに入れられてしまう」 'A'属性を取りこぼすのではなく、'A'属性と誤認されるのだな。 一連のレスを見て久しぶりに cvs update したら waiting for anoncvs_w3m's lock in /cvsroot/w3m/w3m/scripts/w3mman となって延々と待たされる というか >>485 から状況変わっとらんがな 記念パピコ Linux Mint 17.1 Rebecca MATE 多分 5月6日 あたりから http://www.google.co.jp/ で検索すると Refresh (0 sec) /search? ... &sei=XXX って sei の値を変えながら refresh し続けて 最終的に ↓ になるんだけど ナニ?キミタチならないの? 続行するには、下に表示される文字を入力してください: ... このページについて お使いのコンピュータネットワークから通常と異なるトラフィックが検出されました。 ... >>515 なります。自分だけかと思ってた。 ウィルスにでも感染しちゃったかなと思った。 他の火狐とかじゃ何もならない。 w3mだけlubuntu上でもFreeBSD上でも生じる… emacs-w3mでなったからなにごとかと思った w3mでなってたのか とりあえずrefreshしないようにした UA を Mozilla 系にしていて同じ目に遭ったが、素でも同じことになっていたのか ちょっと試しただけだが Lynk あたりだとマシ? 同じ日に YouTube の API v2 がついに動かなくなってたな よりによって連休明けかい 言葉足らずだったかもしれないが Lynx 云々は UA をそれにするということね でも、その他大勢に紛れたいから UA を変えてたんだけど 517 のように refresh をとりあえず無効にしてちょっと考えるか ちょっと調べてみたけど、googleが返すHTMLの<noscript>要素の中に meta content=0 が常に入っているせいで延々とrefreshすることに なるようだ。 他のブラウザでも問題になるところをみると、Google側の問題のように 見える。 一時的に設定するなら w3m -o meta_refresh=0 で起動すればよいのか。 https://accounts.google.com にログインする方法はないですか。 何故かメール入力欄が表示されないのですが。 Googleと言えば、検索結果の画面に検索ボタンが表示されない 再検索するのにいちいち前の画面に戻るのめんどくさい >524 うわほんとだ emacs-w3mの画面見て言ってた スマソ >>524 http://sourceforge.net/projects/w3m/ から w3m-0.5.3.tar.gz を取得し直してみたが、やはり以下のようにしか表示されません。 何だろう?? >メールパスワード [ ] [ログイン] [ ] ログイン状態を保持する >このチェックボックスはオンのままにしておくと便利です。ただし、端末を共有してい $ ./w3m -version w3m version w3m/0.5.3, options lang=en,m17n,image,color,ansi-color,mouse,gpm,menu,cookie,ssl,ssl-verify,external-uri-loader,w3mmailer,nntp,gopher,ipv6,alarm,mark うちはこう。 > メール [ ] パスワード [ ] [ログイン] [*] ログイン状態を保持する % w3m -version w3m version w3m/0.5.3, options lang=ja,m17n,image,color,ansi-color,menu,cookie,ssl,ssl-verify,external-uri-loader,w3mmailer,nntp,ipv6,alarm,mark,migemo 実は gentoo の www-client/w3m-0.5.3-r5 なんで、↓ の patch が当たっているからかも。 https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/www-client/w3m/files/w3m-0.5.3-input-type-default.patch?revision=1.1& ;view=markup <input type="email"> みたいだし、w3m が type="email" に未対応なのかな? 前もこんな話があった気がする。 >>524 度々すみません。 gentoo の www-client/w3m-0.5.3-r5 では、 https://accounts.google.com のメール、パスワード欄ともに出るけど ログインはやはりできないという理解でいいですか? w3m-0.5.3-r5.ebuild 記載の *.patch を w3m-0.5.3.tar.gz に全部あててみたのですが、404に飛ばされてしまうもので。 >Title Error 404 (見つかりませんでした)!!1 >Current URL https://accounts.google.co.jp/accounts/'http:/ > www.google.co.jp/' >Document Type text/html w3m の下に > Redirection loop detected (https://www.google.com/settings/ ) と出た後にキーを押すと > Moved Temporarily > > The document has moved here. となって、here のリンクを踏むと <アカウントの概要> https://www.google.com/settings/general-light?ref=/settings/ > アカウント設定 > > 標準に対応していない古いブラウザまたは一般的ではないブラウザをお使いのようです。 > > Google アカウント設定のすべてにアクセスするには、下記のブラウザの最新バージョンにアップグレードしてください。 となります。そこから「検索」のリンクを踏めば検索ページは出ますが、 Google アカウントをあまり使ったことがないので、 こういうもんなのかは判りません。 --- 続く --- --- 続き --- ただ、ログアウトを試みると <Error 404 (見つかりませんでした)!!1> https://accounts.google.com/'http:/www.google.co.jp/accounts/Logout2?hl=ja& ; ... ' > > > 404. [INS:That’s an error.:INS] > > The requested URL was not found on this server. [INS:That’s all we know.:INS] となります。refresh url の前後に ' (') があるせいに見えますが… # 大丈夫か Google ? もう一度 https://accounts.google.com に行くとメール入力からになるけど、 https://www.google.co.jp/ に行くとメールアドレスが表示されていて、 ログアウトしてるんだかよく判らんです。 emacs-w3mではgoogleだけrefreshしないパッチが当たったようだ。 http://news.gmane.org/group/gmane.emacs.w3m/thread=9322 -o usera_agent=Linx だと確かに問題起きないね。 >>532 結構前からこうなんだね。 refresh url の前後に ' があるんは正しいのかな? 要らん気もするけど、仕様把握してないからわからんな。 >>530 ,532 それです。そのシングルクウォートの付いたRefresh で 404 に飛ばされました。 で、結局 gentoo の w3m-0.5.3-r5.ebuild 記載の *.patch と、 >>532 提示の NetBSD の file.diff をあて、google へログインする事が出来ました。 大変ありがとうございました。 今はCVSのアクセスに問題ないんだな 開発は完全に滞っちゃってるけど osdn(旧sfjp)のw3m adminが全員inactiveなのでメンバー追加もできない状態にある。 >>536 w3mはjpじゃなくてnetだった気が そうだった。jpじゃなくnetだった。 旧w3m-devのMLアーカイブリンクももうドメインごと存在してないな… > <input type="email"> みたいだし、w3m が type="email" に未対応なのかな? lynxだと2012年バージョンとか更新多いからhtml5対応してて ちゃんとメールアドレス入力欄も出るってことかしら 知らんけど w3m の patch と同じように unknown が text 扱いになってるのかも ラベル付きのURL(〜#dokosoko)を踏んだときにジャンプできないことが偶にあるのですが、 そういうページでは現URLがラベルが取り除かれたものになっています。 ジャンプできなかったページでも、#dokosokoでGOTO_URLすれば通常通りジャンプできます。 これはhttpサーバー側の設定でそうなっているのでしょうか。 うちのw3mで duckduckgo.com が使えなくなったんだけど、 皆さんのところはどうですか? 一昨日、つまり2015年12月15日(火)には使えたのに 昨日になったらページが表示されない。 他のブラウザからは使える模様。 画面下に Viewing[SSL] <html> No Line と出て、VIEWコマンドで見てもソースは1字もない感じ。 このスレッドで以前(4年近く前だが) DuckDuckGo を 使っているという投稿があったんで問うてみる。 w3mで duckduckgo.com が使えなくなった件の続報。 環境のOpenSSLのバージョンが古かったので更新しw3mも再構築。 $ ldd ./w3m libssl.so.1.0.0 => /usr/local/ssl/lib/libssl.so.1.0.0 (0xXXXXXXXX) libcrypto.so.1.0.0 => /usr/local/ssl/lib/libcrypto.so.1.0.0 (0xXXXXXXXX) 元は /lib/libssl.so 等だったから共有ライブラリの更新は成功、と思う。 結果は変化なし。 ああ、確かに見えないなあ… httpでつなげにいくとhttpsにリダイレクトされてw3m上では中身が空っぽにみえる。 wgetで取りに行ったindex.htmlはちゃんと描画されてる。SSLがらみっぽい感じ。 w3mで duckduckgo.com が見られなくなった件 第3話 さっき試したら以前のように見られた。 向こう(サーバ)側に問題があったのか。 よく分からないけど、この話は解決…? w3mからYouTubeなんかの動画をmplayerのウィンドウが開かないようにxtermウィンドウ内で見るには、 youtube-dlとpythonとmplayer2のインストール以外に何が必要でしょうか? というかそういうことが可能でしょうか? 何かスクリプトでも書かなければダメでしょうか? 自分が参考にしたサイトは以下のところです。 http://qiita.com/tigberd/items/594c27426c5580450bf2 ちなみにOSはLubuntu15.10です。 youtube-dl でダウンロードして mplayer で再生すれば フレームバッファコンソールでもYoutube動画を観られるのね。 あとは自動再生のCGIか何かを組み込むだけじゃないか。 >>555 の問題は使用環境が違うので力になれない。済まぬ。 557>> いえいえお心遣い誠に感謝します。 とりあえず報告です。 リンク先のおそらくFFmpegの項の「インストール方法」を試せばいいと思ったんで、 Step0はなんとか進んで、Step1の ./configure --enable-sixel-graphics を実行したら configure: error: Unable to successfully link Athena library (-lXaw) with test program と表示されました。 他にもホームディレクトリには「.Xresources」はなく「.Xauthority」ならありました。 リンク先は興味深い内容がたくさんあって他のOSで試してみようと思います。 紹介してくださってありがとうござます。 少なくともさっきやってみたら普通に見えたよ。 自分ならstrace/trussでシステムコールレベルでどこで詰まってるか とりあえず調べてみるかなあ。 あとは新規ユーザーを作って.w3mない状態で試してみるとか、使っているなら プロキシ周りを疑ってみるとか。 >>559 俺の環境(フレームバッファコンソール、fbterm)でも見れない。 loadLink(): Can't load http://docs.python.org/3.5/library/urllib 別のブラウザだと表示されるけど、アドレスバーには https://docs.python.org/3.5/library/urllib.html と表示される。"http" が "https" に変わり、末尾に ".html" が追加。 で、このURLを指定すればw3mでも見られる。 サーバから返送されたリダイレクトのレスポンスを w3mが拾い損なってる感じかな。よく分からんけど。 あ、自分はw3m/0.5.3+debian-19で試しました。 ちゃんとhttpsにリダイレクトされてます。 debianパッケージのソースはあちこちにあるパッチや独自のfixを含んでいて 実質一番アクティブなforkみたいな感じなので、そっちを使う方がいいかも。 https://anonscm.debian.org/cgit/collab-maint/w3m.git 一応sourceforge側に定期的にそのへん報告もしてるしメンテナ自身sourceforge のw3mに参加を希望しているけどずっと無反応なのでこんな状態が続いている。 MigemoOFFしてますが、正規表現で検索が出来ません……よくわかりません 日付探そうとして\d{4}してもnot foundで、[0-9]{4}とかw\{3\}とかしてみたんですが…… [0-9][0-9][0-9][0-9]なら流石に4桁の数字ヒットします Debian Sid i386, w3m 0.5.3-29 使える正規表現の一覧とかありませんか? w3mの正規表現はどうもaitoさんが自前で作ったものっぽい。 \dみたいなリッチな正規表現は未対応のようだ。一覧もなさそう。 sed, grepあたりで使える正規表現を前提にしてるんじゃないかな。 ローカルcgiってどうやって使うの?ディレクトリの設定ちゃんとしてるのに、ソースが表示されてしまう。 /foo/bar/hoge.cgi があるとして、これを実行したいなら設定(.w3m/config)を cgi_bin /foo/bar として以下にアクセスすれば動かないかな? 実行属性は必要。 file:///cgi-bin/hoge.cgi 最近 mingw にインストールしてみたんですがヘルプが表示されないっていう問題がありました まずヘルプの CGI が Perl の構文チェックで警告がでるため、そこで止まってしまい何も表示されないのと それを解決しても日本語ヘルプが表示されず、これは生成された w3mhelp-funcdesc.ja.pl に問題があったためでした 日本語が記述されている部分は euc-jp で書かれているため生成時にうまく処理できなかったのかもしれません gnupackで試したところやはりヘルプは表示されないのでcygwin版も同じ状態じゃないかと思います すまぬ。ここ2週間ほど(SNS業者のアイコンが表示されるようになった頃から) 投稿できなくなってたので >>568 の修正を施して、この場で試してしまった。 確かに不適切だね。 で、分かったこと。板によって投稿できたりできなかったりする。 この板は >>568 の修正の有無によらず投稿できた模様。 別の板では今でも書き込めない(萌えニュースとか)。 [書き込む] ボタンを押したときに Unknown URI: /test/bbs.cgi と表示される、つまりホスト部 ○○.2ch.net が消失するためらしいが…。 アップデート、どこにある? スレッド先頭のリンク先とか、googleさんの「過去○週間」で見当たらない。 sourceforgeに無いのなら来てないんじゃね? 別のアプリケーション関連のスレッドへ投稿するつもりが 送信先を間違えるか何かして、ここに載っただけ? なんかここ↓のハイパーリンク『次のページ』が踏めない ttp://gihyo.jp/admin/serial/01/ubuntu-recipe/0019 というか、URL が file:/// に化ける謎 Androidのフォントが変わってもうた。 termuxという端末アプリ上で、 pkg install w3m と、アプリのyumかaptgetかのw3mをインストールし動作させると、Android全体のフォント体が変わってもうたよ。なんなの。 >>580 俺のところもなるわ。 HTMLのソースを見ると当該部分は <a href="/admin/serial/01/ubuntu-recipe/0019?page=2" rel="next"> となっているから、hrefのリンク先が '/' で始まってると w3mはローカルファイルへのリンクと判断して "file://" を補うみたいね。 おそらくページ作成者はサーバのルートからの絶対アドレスとして "https://gihyo.jp/" ; が補われると想定して書いてるのだと思う。 実際に "https://gihyo.jp/admin/sefial..." ; で次のページが見られるし。 HTMLの文法としてどちらが正しいのか知らんけど、とりあえず現象の分析まで。 w3m の紹介ページが w3m で満足に読めないとかなんという典型的な皮肉 Lynx ではリンク先が絶対URLでない旨の警告を受けたものの読めたんで w3m もそんな感じのユーザーインタフェースにすればいいのにね。 hrefの先頭が '/' の場合にどう解釈すべきか、は RFC 3986 に出てるらしい。 日本語訳もウェブ上で見つけたんだが、さっぱり分からん。 ネット上での議論を見ると、先頭の '/' はリンク元のファイルがある ホストやサイトでの絶対アドレスとして扱うみたい。 というわけで技評さんのページのリンクの書き方は正当のようだ。 w3m のソースだと url.c の parseURL() や parseURL2() のあたり、 これがまた複雑で…。 >>582 ,584,585 なるほど…と思ってよく見たら、これサイト側のベースURLの指定が間違ってるのか 理想: <base href="https://gihyo.jp/" ; /> 現状: <base href="/" /> サイト側のミスっぽいけど、w3mも機転が足りてない感じがする >>584 utf8版から入ると eucのマニュアルページを読むのが最初の試練だった気が >>581 それは、debianなのか、fedoraなのか、freebsdなのか? <head> 〜 </head> の <base href="..."> には気づかなかった。 確かに問題のページでは href="/" になってるのが直接の原因みたいね。 手元のApacheと合わせて試したところ、 <base href="http://ServerName/" ;> のようにサーバを正しく指定するか あるいは <base href="..."> を一切書かなければ w3m でも <a href="/dir/file.html"> のリンクを期待通りにたどれる。 <base href="/"> と書いてしまうと、ローカルの file:///dir/file.html を読もうとする。 原因自体はそれで確定みたいですね ただ、C言語なんて長いこと触ってないし、複雑過ぎるしで、自分にゃ手に負えんです。 暫定で baseurl を潰すだけで良いなら、 $ ag 'buf->baseurl' *.c file.c の case HTML_BASE: ブロックの中あたりですかね? ……と当てずっぽうに言ってみる てか、すまん 解析用にparse結果を書き出す関数を作ってみた 問題箇所(=buf->baseURL->hostの設定箇所)は、今の所特定できず こんなことしなくても、正規なデバッグ方法がちゃんと用意されてそうな気も /* w3mソース [proto.h] 末尾に追加 */ extern void clear_mylog(); extern void printf_mylog( char *fmt, ... ); extern void dump_ParsedURL( ParsedURL *p ); /* w3mソース [url.c] 末尾に追加 */ const char fn_mylog[100] = "/tmp/w3m_debug.log"; void clear_mylog(){ FILE *fp =fopen( fn_mylog,"w"); if( fp ) fclose( fp ); } void printf_mylog( char *fmt, ... ){ FILE *fp = fopen( fn_mylog, "a"); if( fp ){ va_list args; va_start( args, fmt ); vfprintf( fp, fmt, args ); va_end( args ); } } void dump_ParsedURL( ParsedURL *p ){ if( p ){ printf_mylog( " host:[%s] file:[%s] real_file:[%s]\n", p->host, p->file, p->real_file ); }else{ printf_mylog( " ParsedURL is null.\n" ); } } [dump 結果] url.c: baseURL(Buffer *buf){ ... dump_ParsedURL(buf->baseURL); ... } https://mevius.5ch.net/test/read.cgi/unix/1185784998/ へのアクセス時 → host:[mevius.5ch.net] file:[/unix/] real_file:[(null)] http://gihyo.jp/admin/serial/01/ubuntu-recipe/0019 へのアクセス時 → host:[(null)] file:[/] real_file:[(null)] ^^^^ 不具合 取り敢えずこんな感じ? ttps://pastebin.com/wtiNPhJm baseタグのhrefを解釈する時に使われているparseURL関数で 引数のurlにスキームが存在しないとそのurlが ローカルのものとして解釈されるのが原因だと思う。 lynxでは絶対URIじゃないbaseタグは無視している様なので w3mでも無視していいかなと。 >>591 おお、gihyo.jp も普通に見れるようになってますね 個人的には、 HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit) ... case HTML_BASE: ... if( p && p[0]=='/' ) break; /* この一行を追加して、invalidな <base>タグを弾く */ if (!buf->baseURL) で良いかなー、とか検討中だった スキーマの使われ方とかまだ見てないですが、利用した方がベターっぽいですね インライン画像がたまに表示されない気がするけど、気のせいだろか? もうちょっと見てみます >>592 まだ確認してませんが HTMLtagproc1 (>>591 の@@ -5066,6 +5066,8 @@)の方にも 同じことしたのが原因な気がしてきました。 該当部分が#ifdef USE_IMAGE内なので 画像表示がおかしくなるならここが原因かもしれない… そもそもスキームで判定するのがいけない、という可能性もあるので そっちの方も調べてみます。 >>591 [file.c] HTMLlineproc2body( ) case HTML_BASE: にて、 base=NULL としてしまうと、サイトの初回訪問時(=画像がキャッシュされていない状態)では、インライン画像が表示されないみたいです ParsedURL *base は、HTMLlineproc2bodya の先頭の方で、バッファの URL によって初期化されてて、NULL にしては駄目っぽい すまん、完全オリジナルじゃなくて debian の git patch をあてた方でチェックしてた… base 変数はなかった 混乱させてすまん >>591 オリジナルにこのパッチを当てた時は問題なかったです お騒がせしました(一応報告まで) テスト方法(Linux Mint serena 64bit環境) $ mkdir w3m_test; cd w3m_test $ wget https://downloads.sourceforge.net/w3m/w3m-0.5.3.tar.gz $ wget http://www.linuxfromscratch.org/patches/blfs/svn/w3m-0.5.3-bdwgc72-1.patch $ tar zxvf w3m-0.5.3.tar.gz $ cd w3m-0.5.3 $ patch -Np1 -i ../w3m-0.5.3-bdwgc72-1.patch $ patch -Np1 -i ../wtiNPhJm.txt ## ← >>591 のpatch $ sed -i 's/file_handle/file_foo/' istream.{c,h} $ sed -i 's#gdk-pixbuf-xlib-2.0#& x11#' configure $ sed -i 's#/libexec#/lib#' configure ## ← w3mimg 用に微調整 $ PKG_CONFIG_PATH="/usr/lib/openssl-1.0/pkgconfig:$PKG_CONFIG_PATH" \ LIBS="-lX11 -ldl -lXext -lz" \ ./configure --prefix=/usr --sysconfdir=/etc \ --with-migemo=cmigemo $ make $ rm ~/.w3m/w3mtmp* $ ./w3m -v http://gihyo.jp/admin/serial/01/ubuntu-recipe/0019 $ ./w3m -version w3m version w3m/0.5.3, options lang=en,m17n,image,color,ansi-color,mouse,gpm,menu,cookie,ssl,ssl-verify,external-uri-loader,w3mmailer,nntp,ipv6,alarm,mark,migemo w3mimgは、 Makefile にて、 libexecdir = ${exec_prefix}/lib w3mimgdisplay を /usr/lib/w3m/w3mimgdisplay に配置して確認 参考: ttp://www.linuxfromscratch.org/blfs/view/cvs/basicnet/w3m.html 誰でも簡単にパソコン1台で稼げる方法など 参考までに、 ⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。 グーグル検索⇒『宮本のゴウリエセレレ』 2HILOH1I8V githubあたりに公式で置いてほしい… パッチが分散しすぎてorz いまはとりあえず本家が追いつくまでdebianから落としたやつがいいのかな? sixel関連のパッチの置き場所が無いのでここで質問してみたテスト いやね、0.5.3->deb系パッチ->sixelパッチ->data-urlパッチ->data-srcパッチ順番だと 本家0.5.3対象でdiff作った奴とはconflictするんで。 sf.netのアカウント持ってる人全員inactiveなのでgithubに移行のしようもないからな… おはようございます、何方か w3mでアマゾン(amazon.co.jp)のサインインは可能でしょうか? 立ち上げは w3m -cookie https://amazon.co.jp/ でconfigの方は cookie_avoid_wrong_number_of_dots cookie_accept_domains cookie_reject_domains accept_bad_cookie 0 accept_cookie 1 show_cookie 1 use_cookie 1 で試したのですが、サインインのページではパスワードinputしか表示されず 試しに入力してみると「続行するには、cookieを有効にしてください」 と表示され、サインインできません。 画像表示ONでw3m試すと以外と快適なので、可能であればそのまま商品購入したいです (現状ではFF立ち上げてサインイン→購入ボタン以下略なので) ☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、 改憲議員が3分の2を超えております。『憲法改正国民投票法』、 でググってみてください。国会の発議はすでに可能です。 平和は勝ち取るものです。お願い致します。☆☆ w3mでgmail使えないですか? サインイン出来ません。 設定とか何かあるのでしょうか? >> 602 サインインできますよ。画面の変化が遅いのでじっくり待ってみてください。 「簡易HTMLで表示」とかいうボタンを押す。 でも、実用する気になれないな。 ubntuのw3mならgmailログインできました。 でも、cygwin上でのw3mはgmailログイン出来ないんだ。。。 要求されたページは無効ですって出るし、そもそもパスワード 入れる箇所がないのよね。 # w3m -version w3m version w3m/0.5.3, options lang=en,m17n,color,ansi-color,mouse,menu,cookie,ssl,ssl-verify,external-uri-loader,w3mmailer,nntp,ipv6,alarm,mark ちなみにgmailログイン画面が下記です。 Enter your email の後のカッコの中を入力しようとすると、左下にpassword:と出ます。 One account. All of Google. Sign in to continue to Gmail [avatar_2x] Enter your email [ ] [Next] Find my account Sign in with a different account Create account 知り合いから教えてもらったパソコン一台でお金持ちになれるやり方 時間がある方はみてもいいかもしれません グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』 JPQYB 質問させてください google検索した時に左に出てくるアレ邪魔じゃないですか? greasmonkeyみたいにサイトごとにhtml弾く方法ありますか よろしくお願いします >>609 googleの件はユーザーエージェント変更で解決できました でもgitとか見てると上の方いらないので消せたら最高ですね・・・ ここ何ヶ月かw3mで5ちゃんねるに投稿できなかった。 403 Forbidden nginx/1.12.1 というエラーメッセージ。 ユーザーエージェントを調整したら書けるようになったわ。 FireFoxの新しいやつだよ、と名乗る感じ。 使わないコードページ削れるパッチ Sc_738476.gz 試しにksx1001,uhc,johab取り除いた所1275408->1182128バイトへ 書ける板と書けない板が生じてる模様。 プログラム板には書けるんだが、自作PCやハードウェアは Forbidden になる。 このスレッドはどうだろうか。 Google の表示がおかしい。 直接の原因は a 要素の中に div 要素があるから、つまり HTML5 だからということかなあ。 とはいえ、リンクがいつものテキストではなくテキストの手前にあるというだけだから リンクが判りにくいけど慣れれば平気ということになるのかな。 Google 自体は w3m じゃなくてもいいけどその先を w3m で見たいということも あるんだけどな。 なんか、このままの方が快適じゃないかという気がしてきた。 ESC-m のメニューは使い物にならないけど元々使ってないし。 >>616 昨日これに気がついたけどUser-Agentを色々いじると元のようになるのもあった Mozilla/4.0だけとか 他にも5.0でもあったけどどれか分からなくなった 今はjavascript 有効ブラウザじゃないとgmailログイン出来ないのね。 w3mユーザーオワタ >>619 w3mってJS解釈できないの? 今までGoogleにログインできたのは一体なにを解釈してたんだろう。 質問させてください! よく行くWebページを自分好みに整形したいです 構想は 1. w3mでページにアクセス 2. なんらかの方法でpythonに渡して整形 3. 整形したものを再びw3mに表示 です. 2と3の方法が分かりません. ちなみに,スレの中で出てた「フィルター」がこの機能でしょうか? >>621 2のpythonのプログラムを標準入力で受け取って標準出力で表示するように作れば、 w3m 〜 | python 〜 | w3m … という方法で渡していける。 ただ、pythonの出力がただのテキストなら、3をw3mで受ける必要があるか。 lessで十分だと思う。 w3m 〜 | python 〜 | less pythonがhtmlを出力するなら、3のw3mのオプション(…の部分)は -T text/html とする。 w3m 〜 | python 〜 | w3m -T text/html >>622 まさか当日中にレスが帰ってくるとは・・・! ありがとうございます! 今プログラム作ってるのでできたらやってみたいと思います 最初のところはcurlとかwgetとかでやったほうがいいんでねえの? 最初のところはw3mで閲覧中に | 入力にしたほうがいいんでねえの? ブログとか読むのに Perl の HTTP::Proxy 使っていろいろやってたよ。 整形だけでなく、どの記事を読んだかとか SQLite で管理してた。 最近は https だからローカルサーバに URL を渡して処理するね。 こっちも検索結果のマージとか、いろいろなことに利用してる。 難しい事してるんだな。どんな風に管理するんだろ。 まああまり頭良い使い方は向いてないだろうな。 自分が頭良くない事は痛いほどに痛感する重言する。 >>621 とかはlocal cgiといという機能もある。 w3mのtarballを展開したdoc-jp/*にちょっと説明が書いてある。 そのdoc-jp/の中で実行すればlocal cgiから使える機能とkeymapの説明を合体させてみた。 .w3m/keymapとして使えるはず?。ちなみに、linein.cを変更すれば入力の時のkeymapも変更出来る。 並び替えるだけ。 ---zsh sed '/^#/d; $ adummy' keymap.default |while read do test -z "$REPLY" && {echo; continue} if test $REPLY != dummy then mark=( $(grep -o '[^[:space:]]*$' <<<$REPLY) $mark) grep "^$mark[1]"[[:space:]] README.func \ |sed 's%[^[:space:]]\+[[:space:]]\+%# %' echo $REPLY else grep -Ev "$(printf '^%s|' $mark |sed 's%|$%%')" README.func \ |awk '{printf "# %s\n#keymap undefined-key %s\n", $2, $1}' fi done |nkf -w |cat <(grep '^#' keymap.default) - |less ------ local cgiはoptionで設定されたディレクトリにあるものはcgiとして実行出来るよ、 その時w3mの機能も使えるよという感じか。 まずw3mで一度optionの画面を開いて設定してもいいし、適当に保存すると、 .w3m/configが出来るから扱いやすいと思う。 w3m -show-option すると何のoptionか分かる。 場所決めてそこに^*2のようなscriptを入れて実行..あれ実行..なんて言うんだっけ とにかくそれをして以下のように呼び出すとgoogleのsourceの画面になる。後は勘でいけると思う。 俺も勘でしか触ってないし、勘で触って色々出来ると思うよ。 w3m file:///cgi-bin/echo.zsh?http://google.com/ ---*2 #!/bin/zsh <<EOF Content-Type: text/plain w3m-control: GOTO $QUERY_STRING w3m-control: VIEW EOF ------ 後便利なのはEXTERNとかは以下みたいな使い方も出来るよとかか。 なんでこんな書き方するのというのは、ただの説明の為。辞書系の機能も色々出来るね。 keymap ft EXTERN 'p=%s; |echo $p |xsel -a' #!/bin/zsh # 見れなくなったgoogleの対処を書いた。やっつけだけどやっつけがいつも自分を助けてくれない? # googleがおまえもっと使いにくいスタイルで使えと言ってきたら.w3m/.cookieを削除したり。 # httpsをhttpに変えてみたり、後num=100を50ぐらいに減らしたら文句言われない場合もある。 # 以下のようにcommandを実行した場合に変数$QUERY_STRINGに入っている'test%20test'を # test+testへ変えて吐き出す。 # w3m file:///cgi-bin/google.zsh?'test test' # 日本語は%エンコーディング?へ変えている。 # sedの処理は長い日本語をnkf -MQした時に入る改行への対応をしている。 w3go () { printf %s $1 |nkf -MQ |sed -n ':S $! {N; b S;}; s/=\n//g; s/=/%/g; p' test $# -eq 1 || {shift; echo -n +; w3go $@} } # 次のページへの対応。 if test "$QUERY_STRING" \=~ '^start=[0-9]*;' then NEXT="&$(cut -d ';' -f 1 <<<$QUERY_STRING)" QUERY_STRING=$(cut -d ';' -f 2- <<<$QUERY_STRING) fi # 検索部分の対応。 # formから送られてくるspaceが+に変換されたものを変える。 test "$QUERY_STRING" \=~ '^submit=1&' \ && QUERY_STRING=$(cut -d '&' -f 2- <<<$QUERY_STRING |sed 's/+\+/%20/g') # 飛ぶURLを作る。 URL="https://www.google.co.jp/search? \ q=$(w3go $(nkf --url-input <<<$QUERY_STRING))&hl=ja&biw=&bih=&gbv=1&num=100" # googleのhtmlをfilteringして表示する。 # ここら辺は癖なのか仕様なのかがあってcopyして実行しても # 動かないだろうからこういう書き方をしている。 # またここは丁寧にやれはやるほど遅くなる。 # 最後のsを,で仕切っているのは$QUERY_STRINGの中に%が含まれる為。 <<EOF Content-Type: text/plain w3m-control: GOTO $URL$NEXT w3m-control: VIEW w3m-control: PIPE_BUF sed 's%<form.*/form>'\ '%<form action="file:///cgi-bin/google.zsh">'\ '<input name=submit type=hidden value=1>'\ '<input type=text value="$(nkf --url-input <<<$QUERY_STRING)"></form>%;'\ 's%\(<a [^>]*>\)<[^>]*>\([^<]*\)</[^>]*>%\1\2%g;'\ 's%\(<a [^>]*href="\)/%\1https://www.google.co.jp/%g ;'\ 's,<a [^>]*;\(start=[0-9]*\)[^<]*\(&.t;</a>\)'\ ',<a href="file:///cgi-bin/google.zsh?\1;$QUERY_STRING">移動 \2,g' w3m-control: VIEW EOF 以下みたいに実行。動かなかったらごめんな。でも俺の環境だと動いてる。 w3m file:///cgi-bin/google.zsh?'わずかばかりの 運の悪さを 恨んだりして' 色々変な事してるなsubmitされて来て完成されてる文字列を+を%20とかに変える必要ないな。 inputってdefaultで入ってる文字列の方を加工すべきで。 後やっぱ一度に表示しないと戻る時にゴミが入りすぎるな。 まあ直さないんだけど。ノシ。 #!/bin/zsh w3go () { printf %s $1 |nkf -MQ |sed -n ':S $! {N; b S;}; s/=\n//g; s/=/%/g; p' test $# -eq 1 || {shift; echo -n +; w3go $@} } case "x$QUERY_STRING" in xstart=[0-9]*\;*) # 次のページへの対応。 NEXT="&$(cut -d ';' -f 1 <<<$QUERY_STRING)" QUERY_STRING=$(cut -d ';' -f 2- <<<$QUERY_STRING) URL="https://www.google.co.jp/search? \ q=$( w3go $(nkf --url-input <<<$QUERY_STRING))&hl=ja&biw=&bih=&gbv=1&num=100" ;; xsubmit=1\&*) # formから流れて来た文字列は加工しない。 # こうしないと移動の表示が狂う。 QUERY_STRING=$( cut -d '&' -f 2- <<<$QUERY_STRING ) URL="https://www.google.co.jp/search? \ q=$QUERY_STRING&hl=ja&biw=&bih=&gbv=1&num=10" ;; *) URL="https://www.google.co.jp/search? \ q=$( w3go $(nkf --url-input <<<$QUERY_STRING))&hl=ja&biw=&bih=&gbv=1&num=100" ;; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL$NEXT w3m-control: VIEW w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\ '%<form action="file:///cgi-bin/google.zsh">'\ '<input name=submit type=hidden value=1>'\ '<input type=text value="\1"></form>%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's%\(<a [^>]*href="\)/%\1https://www.google.co.jp/%g ;'\ 's,<a [^>]*;\(start=[0-9]*\)[^<]*\(&.t;</a>\)'\ ',<a href="file:///cgi-bin/google.zsh?\1;$QUERY_STRING">移動 \2,g' w3m-control: VIEW w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF EOF まだ色々間違ってるだろうけど、まあ適当には使えるじゃないか。 おしまい。 あ、一ヶ所だけnum=が10になっちゃってるから手動で直して。 明日か明後日には検索出来ない文字列と、時間指定の対応をする。 #!/bin/zsh # これだけで良かったのか簡単になった。でも半分寝てるから何処か間違えてるだろう。 w3go () { printf %s $1 |nkf -MQ |sed -n ':S $! {N; b S;}; s/=\n//g; s/=/%/g; p' test $# -eq 1 || {shift; echo -n +; w3go $@} } UNIQ=$(mktemp -u XXXXXXXX) case "$UNIQ$QUERY_STRING" in ${UNIQ}submit=1\&*) # formから流れて来た文字列は加工しない。 URL="https://www.google.co.jp/search? \ q=$( cut -d '&' -f 2- <<<$QUERY_STRING )&hl=ja&biw=&bih=&gbv=1&num=100" ;; ${UNIQ}dummy\&*) # 次のページへの対応。# 時間指定への対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )" ;; *) URL="https://www.google.co.jp/search? \ q=$( w3go $(nkf --url-input <<<$QUERY_STRING))&hl=ja&biw=&bih=&gbv=1&num=100" ;; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL$NEXT w3m-control: VIEW w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\ '%<form action="file:///cgi-bin/google.zsh">'\ '<input name=submit type=hidden value=1>'\ '<input type=text value="\1"></form>%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)%\1file:///cgi-bin/google.zsh?dummy\&\2%g' w3m-control: VIEW w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF EOF 何度もごめん見直して無い部分は大概間違ってるな。 そもそも最初testしてた時のcodeがまったくいらない。 まったく分けから無く見えてるなこれじゃ。 #!/bin/zsh UNIQ=$(mktemp -u XXXXXXXX) case "$UNIQ$QUERY_STRING" in ${UNIQ}submit=1\&*) # formから流れて来た文字列は加工しない。 URL="https://www.google.co.jp/search? \ q=$( cut -d '&' -f 2- <<<$QUERY_STRING )&hl=ja&biw=&bih=&gbv=1&num=100";; ${UNIQ}dummy\&*) # 次のページへの対応。# 時間指定への対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; *) URL="https://www.google.co.jp/search? \ q=$QUERY_STRING&hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\ '%<form action="file:///cgi-bin/google.zsh">'\ '<input name=submit type=hidden value=1>'\ '<input type=text value="\1"></form>%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)%\1file:///cgi-bin/google.zsh?dummy\&\2%g' w3m-control: VIEW w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF EOF #!/bin/zsh #おかしいな寝る前は対処出来てたんだけど起きたら世界が変わってた。変な所を一度消す。 case "$QUERY_STRING" in rotate\&*) # 次のページへ、時間指定等の対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";; *) #default, またはformから流れてくるもの。 URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\ '%<form action="file:///cgi-bin/google.zsh">'\ '<input type=text value="\1"></form>%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)%\1file:///cgi-bin/google.zsh?rotate\&\2%g' w3m-control: VIEW w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF w3m-control: DELETE_PREVBUF EOF #!/bin/zsh test "${QUERY_STRING%%&*}" = $(basename $( factor $PPID |md5sum )) \ && UNIQ=$(basename $( factor $PPID |md5sum )) case "$QUERY_STRING" in ${UNIQ}\&rotate\&*) # 次のページへ、時間指定等の対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 3- <<<$QUERY_STRING )";; ${UNIQ}\&decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";; *) #default, またはformから流れてくるもの。 URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100" UNIQ=$(basename $( factor $PPID |md5sum ));; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\ '%<form action="file:///cgi-bin/google.zsh">'\ '<input type=text value="\1"></form>%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}\&decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}\&rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF # この星の一等賞んなりたいのw3mで俺は!そんだけ! # 変数UNIQ関係は検索した文字列がcaseの命令と重ならないようにしている。 # それはw3mの起動ごとに変わるはず。もしかしたらいらないのかな。 あーまた間違える。さっきまでとまた世界が変わってる。 #!/bin/zsh test "${QUERY_STRING%%&*}" != $(basename $( factor $PPID |md5sum )) \ && UNIQ=$(basename $( factor $PPID |md5sum )) case "$UNIQ$QUERY_STRING" in rotate\&*) # 次のページへ、時間指定等の対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 3- <<<$QUERY_STRING )" UNIQ=$(basename $( factor $PPID |md5sum ));; decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))" UNIQ=$(basename $( factor $PPID |md5sum ));; ${UNIQ}*) #default, またはformから流れてくるもの。 URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\ '%<form action="file:///cgi-bin/google.zsh">'\ '<input type=text value="\1"></form>%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}\&decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}\&rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF #!/bin/zsh # あってるのかな。 UNIQ=$(basename $( factor $PPID |md5sum )) if test "${QUERY_STRING%%&*}" != $UNIQ; then # default, またはformから流れてくるもの。 URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100" else case "$QUERY_STRING" in ${UNIQ}\&rotate\&*) # 次のページへ、時間指定等の対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 3- <<<$QUERY_STRING )";; ${UNIQ}\&decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";; esac fi <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\ '%<form action="file:///cgi-bin/google.zsh">'\ '<input type=text value="\1"></form>%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}\&decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}\&rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF #!/bin/zsh UNIQ=$(basename $( factor $PPID |md5sum )) if test "${QUERY_STRING%%&*}" != ${UNIQ}=; then # default. URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100" else case "$QUERY_STRING" in ${UNIQ}=\&*) # formから流れてくるもの。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=\&rotate\&*) # 次のページへ、時間指定等の対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 3- <<<$QUERY_STRING )";; ${UNIQ}=\&decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";; esac fi <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed \ 's%Shift_JIS%UTF-8%g; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name="${UNIQ}" type=hidden>%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=\&decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}=\&rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF formから流れてくるものはqueryの変更をしない事にした。ニュースを検索したいのに「すべて」を 検索してしまう事への対応。 Shift_JISは変えないと、formから流れてくる文字の検索が失敗する。 大体これで前と一緒な感じがするな。ただ眠るとどうだろうな。 まあ誰か役に立てば。 はい間違えてる。なんなの俺。俺の頭どうしちゃったんだよ。 #!/bin/zsh UNIQ=$(basename $( factor $PPID |md5sum )) if test "${QUERY_STRING%%&*}" != ${UNIQ}=; then # default. URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100" else case "$QUERY_STRING" in ${UNIQ}=\&rotate\&*) # 次のページへ、時間指定等の対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 3- <<<$QUERY_STRING )";; ${UNIQ}=\&decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";; ${UNIQ}=\&*) # formから流れてくるもの。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; esac fi <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed \ 's%Shift_JIS%UTF-8%g; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name="${UNIQ}" type=hidden>%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=\&decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}=\&rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF #!/bin/zsh UNIQ=$(basename $( factor $PPID |md5sum )) if test "${QUERY_STRING%%=*}" != ${UNIQ}; then # default. URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=10" else case "$QUERY_STRING" in ${UNIQ}=\&rotate\&*) # 次のページへ、時間指定等の対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 3- <<<$QUERY_STRING )";; ${UNIQ}=\&decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";; ${UNIQ}=1\&*) # formから流れてくるもの。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; esac fi <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%Shift_JIS%UTF-8%g; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2'\ '<input name=$UNIQ type=hidden value="1">%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=\&decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}=\&rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF あ、num=10のままになってるな。 これでもうもう間違いないっしょ。 だからnumは自分で変えてくんろ。 UTF-8に変える所にgは要らないな。このぐらいじゃ貼らないけど。 てか直さないと出力の中のも変えちゃうか。あーまた間違えてる。 #!/bin/zsh UNIQ=$(basename $( factor $PPID |md5sum )) if test "${QUERY_STRING%%=*}" != $UNIQ; then # default. URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100" else case "$QUERY_STRING" in ${UNIQ}=\&rotate\&*) # 次のページへ、時間指定等の対応。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 3- <<<$QUERY_STRING )";; ${UNIQ}=\&decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";; ${UNIQ}=1\&*) # formから流れてくるもの。 URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; esac fi <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="1">%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=\&decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}=\&rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF 良かった。気づいて。これは申し訳ないレベルだった。 よしもういいだろ。もういいだろ。 #!/bin/zsh # より短く分かりやすく、無駄な事をしてる部分を削った。 UNIQ=$(basename $( factor $PPID |md5sum )) if test "${QUERY_STRING%%=*}" != $UNIQ; then # default. URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100" else case "$QUERY_STRING" in # formから流れてくるもの。# 次のページへ、時間指定等の対応。 ${UNIQ}=form\&*|${UNIQ}=rotate\&*) URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";; esac fi <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF #!/bin/zsh # 直し忘れの修正。 UNIQ=$(basename $( factor $PPID |md5sum )) if test "${QUERY_STRING%%=*}" != $UNIQ; then # default. URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100" else case "$QUERY_STRING" in # formから流れてくるもの。# 次のページへ、時間指定等の対応。 ${UNIQ}=form\&*|${UNIQ}=rotate\&*) URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";; esac fi <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF #!/bin/zsh # ごめんこれだけで良かったの修正。 UNIQ=$(basename $( factor $PPID |md5sum )) case "$QUERY_STRING" in # formから流れてくるもの。# 次のページへ、時間指定等の対応。 ${UNIQ}=form\&*|${UNIQ}=rotate\&*) URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";; *) URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF 一応簡単に説明しくおくと、最近googleで検索してもlink先へ飛べなくなった事への対 処をしている。googleが送ってきたソースをsedで加工して表示している。<a></a>の中に <div>があってそれが原因なので消しているだけ。 他にそのままgoogleを開いたまま検索した場合、検索は出来るが出てくるソースはまた 上で書いた問題を含む為、cgiを経由するように書き換える、だからまた同じようにsedで 加工されたページが表示される。その繰り返し。 やっぱちょっと違うな。<div></div>に変えて動いてるわけだからな。 これは動く。 <a href='test.html'>test<div></div></a> これ駄目。 <a href='test.html'><div>test</div></a> #!/bin/zsh # factorを変更しただけ。 UNIQ=$(basename $(ps -p $PPID -o pid,ppid,egroup,euser,lstart |md5sum)) case "$QUERY_STRING" in # formから流れてくるもの。# 次のページへ、時間指定等の対応。 ${UNIQ}=form\&*|${UNIQ}=rotate\&*) URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";; *) # default. URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF #!/bin/zsh # bsdのmanにはeuserとかの指定の仕方は無かったので変えただけ。 # そもそもたぶんここ要らないと思うんだけど改造する時の使い道としてまあやっとく。 UNIQ=$(basename $(ps -p $PPID -o pid,ppid,group,user,lstart |md5sum)) case "$QUERY_STRING" in # formから流れてくるもの。# 次のページへ、時間指定等の対応。 ${UNIQ}=form\&*|${UNIQ}=rotate\&*) URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=decode\&*) # ここから再検索して下さいの対処。 URL="https://www.google.co.jp/search? \ $(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";; *) # default. URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=decode\&\2,;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g ;'\ 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ '%\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF このぐらいの変更で貼り付けないけど、gidとuid使ったほうがいいのかも。 UNIQ=$(basename $(ps -p $PPID -o pid,ppid,gid,uid,lstart |md5sum)) ここの話しね。 UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) このぐらいでいいな。後printfの方が速いな。 いまいちここ好きじゃなんだよな。 #!/bin/zsh # すまんnkfとか無くてももっと簡単な事だった。 # 後<span>を削る必要は無いけど扱いやすくなるから残しとく。 UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) case "$QUERY_STRING" in # formから流れてくるもの。 ${UNIQ}=form\&*) URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=rotate\&*) # 次のページへ、ここから再検索して下さい、時間指定等の対応。 URL="https://www.google.co.jp/$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; *) # default. URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: VIEW w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF 最後にちょっとだけ拡張してみた。これでそろそろ辞めるわ。 変数大文字ですまんな、なんかそうなってしまった。 まあまた間違いのラッシュだろけど。 現在のurlが一番上に表示されるようにしたからそれを見ながら、 二つ目のformにsedに渡す文字列を入力してsubmitするとその変更したurlに変わる。 だからs/ja/en/とすると英語のページに変わりますよという事。 #!/bin/zsh # やられた停電だよ。まじか。 UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) case "$QUERY_STRING" in ${UNIQ}=option\&*) URL_HOLD=$(nkf --url-input <(sed 's%[^&]*&field=\([^&]*\)&.*%\1%' <<<$QUERY_STRING)) URL=$(sed $(nkf --url-input <(cut -d '&' -f 3 <<<$QUERY_STRING |tr '+' ' ')) <<<$URL_HOLD) test -z "$URL" && URL=$URL_HOLD;; ${UNIQ}=form\&*) URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=rotate\&*) URL="https://www.google.co.jp/$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; *) URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: EXTERN echo %s |xsel -s w3m-control: VIEW w3m-control: PIPE_BUF sed "s,<body [^>]*>,&\$(xsel -s |sed "s/&/\\\\\&/g")<br />,;"\ 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's,</form>,&<form action="file:///cgi-bin/google.zsh">'\ '<input name=$UNIQ value="option" type=hidden>'\ '<input name=field value='"\$(xsel -s |sed "s/&/\\\\\&/g")"' type=hidden>'\ '<input type=text></form>,;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF そうだった。xsel -s使ってるから。xsel -sの内容消えるからね。 #!/bin/zsh UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) case "$QUERY_STRING" in ${UNIQ}=option\&*) URL_HOLD=$(nkf --url-input <(sed 's%[^&]*&field=\([^&]*\)&.*%\1%; s/%25/%/g' \ <<<$QUERY_STRING)) URL=$(sed $(nkf --url-input <(cut -d '&' -f 3 <<<$QUERY_STRING |tr '+' ' ')) <<<$URL_HOLD) echo $QUERY_STRING>>$HOME/debug echo $URL>>$HOME/debug echo $URL_HOLD>>$HOME/debug test -z "$URL" && URL=$URL_HOLD;; ${UNIQ}=form\&*) URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=rotate\&*) URL="https://www.google.co.jp/$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; *) URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: EXTERN echo %s |xsel -s w3m-control: VIEW w3m-control: PIPE_BUF sed "s,<body [^>]*>,&\$(xsel -s |sed "s/&/\\\\\&/g")<br />,;"\ 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's,</form>,&<form action="file:///cgi-bin/google.zsh">'\ '<input name=$UNIQ value="option" type=hidden>'\ '<input name=field value='"\$(xsel -s |sed "s/&/\\\\\&/g")"' type=hidden>'\ '<input type=text></form>,;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF >>675 で完成してるからな。後は余興。ノシ。PC触り過ぎてきもちわり。 すまん。やっぱ寝ぼけてたな。$HOME/debugにfileを書き出してる。 #!/bin/zsh UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) case "$QUERY_STRING" in ${UNIQ}=option\&*) URL_HOLD=$(nkf --url-input <(sed 's%[^&]*&field=\([^&]*\)&.*%\1%; s/%25/%/g' \ <<<$QUERY_STRING)) URL=$(sed $(nkf --url-input <(cut -d '&' -f 3 <<<$QUERY_STRING |tr '+' ' ')) <<<$URL_HOLD) test -z "$URL" && URL=$URL_HOLD;; ${UNIQ}=form\&*) URL="https://www.google.co.jp/search?$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; ${UNIQ}=rotate\&*) URL="https://www.google.co.jp/$ ( cut -d '&' -f 2- <<<$QUERY_STRING )";; *) URL="https://www.google.co.jp/search?q=$QUERY_STRING& ;hl=ja&biw=&bih=&gbv=1&num=100";; esac <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: EXTERN echo %s |xsel -s w3m-control: VIEW w3m-control: PIPE_BUF sed "s,<body [^>]*>,&\$(xsel -s |sed "s/&/\\\\\&/g")<br />,;"\ 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's,</form>,&<form action="file:///cgi-bin/google.zsh">'\ '<input name=$UNIQ value="option" type=hidden>'\ '<input name=field value='"\$(xsel -s |sed "s/&/\\\\\&/g")"' type=hidden>'\ '<input type=text></form>,;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF # もう間違っててもちょっと離れる。 まじすまんな。上の$HOME/debugにfileを書いちゃってるから。 まあダメージないだろうけど。この失敗は教訓にしよう。 幸い>>でつけたしだから。万が一があってもあわてずにな。ノシ。 すまん。xselなくてもいけるなPIPE_BUFでも普通に%s使えるっぽいな。 直すか。 いや、どうやら無理だな。後sedで変更する値が見えてるままの値じゃなくて 検索に入ってる文字列を変更するようになってるけと、これは直さないほうが使いやすいな。 後ほんとsedに流し込んでるだけなので、危険な事すれば危険なのでね。 # 下部分だけちょっと改良。 # でも前のほうがxsel -sにurlがそのまま入ってる形だけど。 # xselを一時fileにしたほうが素直だと思うけどrm使うのは頭働かせないと怖いからやらない。 <<EOF Content-Type: text/plain w3m-control: GOTO $URL w3m-control: EXTERN echo %s |sed 's/&/\\\&/g' |xsel -s w3m-control: VIEW w3m-control: PIPE_BUF sed "s,<body [^>]*>,&\$(xsel -s)<br />,;"\ 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 's,</form>,&<form action="file:///cgi-bin/google.zsh">'\ '<input name=$UNIQ value="option" type=hidden>'\ '<input name=field value='"\$(xsel -s)"' type=hidden>'\ '<input type=text></form>,;'\ 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 's%\(<a [^>]*href="\)/url?%\1https://www.google.co.jp/url?%g' w3m-control: VIEW $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) EOF どうでもいいだろうけど以下の部分は、""いらないな。 '<input name=field value='"\$(xsel -s)"' type=hidden>'\ こう見たほうが素直に何してるか分かるかも。\\\&が非常に自分でも分かり辛い。 '<input name=field value='\$(xsel -s)' type=hidden>'\ w3mは適当にformだけを切り出してもちゃんと描画してくれるから、 適当に抜き出してw3m-control: SUBMITを使えば、 10行20行に満たないコードでいろいろ書けちゃうね。shで書くよりも短く書ける。 やっぱw3m作った人はセンスの塊だと思うわ。いつか俺はテコ入れしてバージョン上げたいね。 色々書いたから載せたい所だか、まあ間違い直しでスレッドが埋まっちゃうから無理だな。 5chはmoreなんだな。lessじゃない。 「誰に向けて書いてんだよ?」とは思うけど、どうせ過疎スレだし… そんなことより Google の仕様がまた変わったな。 テキストがリンクになってる。a 要素の中に div 要素が無い。 まあ、この変更に気付いたのは lynx で見てる時なんだが。 俺の環境だとgoogle検索結果の <a> 要素中に <div> が入ってる。 User-Agent を見て出力形式を振り分けてるのかも知れん。 lynx は対応してるけど w3m は放置されてる感じで。 Lynx で google が使えなくなった視覚障害者の話がちょっと前にバズってたけど ちょっとは影響があったのかな? でも、リンクが辿れるだけマシになったとは言え、 圧倒的に情報量が少ない。 User-Agent が Mozilla 系でも使えた頃が一番見やすかった。まだ今年の話だと思うが、 まともに見られなくなり User-Agent を Lynx 系にして凌いでいた。しかし、1 ヶ月 ちょっと前に完全にダメになってしまった。それまでにもちょいちょい表示が崩れることが あったが大抵リロードで解決できていたのに。JavaScript 必須、GET より POST の時代ですな。 StartPage もいつからか次ページに移動できなくなったし、DuckDuckGO も何だか 見辛かったのだが、今回の騒動で Lite 版があるのを知って使い勝手がマシになった。 とは言え、タイトルはぶったぎりだし、検索の質はやはり劣るか。 本家の CVS から落とせなくなってからは、Debian 管理化の Git リポジトリを利用してるけど User-Agent を Lynx 系にしようとしたとき siteconf に対応していることに気付いた。 それ以来便利に使っている。 >>698 w3mは高機能でテーブルのレイアウトができて視覚障害者は利用しないので、Lynx対応の方が社会的な要求が強いのでしょうね。 いきなりLynx-devのメール流量が増えた時は、私も驚きました。 googleさんの検索結果ページだけど、またw3mで使い物になるように改善されたかな。 皆さんどうですか? 自分とこ、色々手を入れちゃったせいで一般的な環境じゃないんだわ。 書き込みがあったとは、気付かなかった。ほら、過疎スレだからさ… w3m も lynx も、a 要素の中に div 要素があると hidden link になるけど 特に困ることじゃない。 w3m の場合はリンク番号を表示させれば済む。 Google で hidden link になってた時期は >>616 から >>696 まで。 Twitter 閲覧する local CGI とか作ってる方っていらっしゃらないですかね……? >>706 スクレイピングする方法はググれば沢山見つかるから簡単に自作できるんじゃない? っていうか自分もこれから作ろうと思ってる あんま関係ないけど、とあるサイトで w3m で画像が表示されなくなったことがあって なんか lazy load とかいうやつらしくて そのときは串自作して対応したよ >>706 Twitterは、user-agentをBot等に変えれば行けませんか? >>708 いままで mobile.twitter.com でモバイル版が提供されてて w3m などのテキストブラウザでも HTML で直接閲覧できていたんですが、 2020-12-16 で mobile.twitter.com 自体が廃止になったので、 今後は API 叩いたり JSON いじったりしないとダメじゃないかと思います。 試してみれば見れるのは分かるだろうに なんで適当な事書くのかね そっか、検索でツイート引っかかるよう抜け道残してあるんだな >>710 失礼しました。「user_agent」を「Bot」にしたら確かに見れますね。 だいぶ読みづらくはなりますが……。 え、User-Agentを「Bot」にしても、ログインすると 「このブラウザは現在サポートされていません。」 と出るんだけど、何か足りない設定があるのかな >>713 ログインしない状態での閲覧はできましたが、ログインしてからの操作は、こちらもできませんでした。 user-agent以外の手段が必要そうです。 なお、閲覧するだけなら、nitterを使うとすっきりした表示になるようです。 ありがとう、やっぱり見れないのね JavaScriptの勉強してlocal CGIを書くかなあ すみません、私は普段ログインせずに閲覧するだけなのでなんとか見れるようになりましたが、 確かにログインするとダメですね……。 ちなみに、 UA をボットにするのは、 README.siteconf にそのものズバリな例が載っていました。 あ、あと、ボットにして見れるのも最新 20 件くらいだけで、ページ送りはできないみたいですね。 >>714 nitter 良いですね。 siteconf に設定しました。 url "https://twitter.com/" ; substitute_url "https://nitter.net/" ; Opening socket... と表示されてる時に接続が切れると うんともすんともと言わなくなるんだな どれだけタブを開いていても固まってしまうから kill して全て破棄するしかなくなる それはまだ接続してないんじゃないか。 「接続が切れる」とは何を指してる? 文字通りだろ 光だと経験ないかもしれないが ボロいADSLなんかで使えば分かる 最初からオフラインだと固まらない Opening socket... の少し後で切れた場合は操作はできても 子プロセスがずっと残ったりする |ヽ|l:.:.:.:/|:l:.:.:.:.:.:..|:.,rー'''゙¨ヽ、:.:.:.:.|:.:.:.:|:.:.:.|:.:| |/ l\/ l/|:.:.:.:l:.|!´ l:.:.:.:.:|:.:.:.:l!:.:.:|:.:| |_/|/ ヽ、|:.:.:.!/ /:.:.:.:.:.|:.:.:.:.l:.:.:.|:.:| |`ヽミ l:.:.:./ _,,,.. -ー/li.:.:.:.:.:l:.:.:.:.:|:.:.:.|:.:| |ィト,/` l,/´ l:/|`:.:.:./:.:.:.:.:|:.:.:.|:.:| |ソ,/ ___ ' i:.:.:.:/:.:.:.:.:.:|:.:.:.|:.:| |` ./,、 ̄`_ヽ|:./l:.:.:.:.:./:.:.:.:|:.:| | ,ト!(:.:rテ'/ ´ /:.:.:.:./:.:.:.:.:.:l:.:| | ' ヾニ_ / /'ノl:.:.:/:l:.:.:.:.:.:.|:.:| /iヽ ヽ 、_ ,/_' -‐':.:.:|:.:.:.:.:.:|:.:l ヽ` \  ̄ ィ‐':.:.|:.:.:.:.:.:.l:.:.:.:.:.:.|:/ >>1 乙だよ l`ヾ、 l--──‐─‐.' ´:.:.:.:.:.:|:.:.:.:.:.:i:.:.:.:.:.:.l/ _'、 \. |イ:./l/:.:.:.:.:.:.:.:.:.:.,:.:.:.:.ノ:.:.:/l/:.:.:.:.:./' l l \ `'i Y |:.:/ノ_ -‐!/l:./l:.:.:/ /:.:.:.:./l 〉、 ヽ | \ ` ´ レ i/ il_/ 光回線だがOpening socket...で固まると何も操作できなくなるな killするしかない ipv6なんて無い昔からの挙動だからな>>719 - redhatでmake出来るソースどこかにありますか? dnf searchではヒットするけど installしようとするとエラーで終わってしまいます no_proxy 環境変数を理解できない、或いはクセがあるのだっけ? curl、wget では $no_proxy に従い直接接続できるが、w3m はプロキシに行ってしまうのだが。 $ w3m --version w3m version w3m/0.5.3, options lang=en,m17n,image,color,ansi-color,mouse,gpm,menu,cookie,ssl,ssl-verify,external-uri-loader,w3mmailer,nntp,gopher,ipv6,alarm,mark >>733 自己レス。 そもそも proxy 環境変数を見ないのだな。.w3m/config に書くのであって。 read.cgi ver 07.4.7 2024/03/31 Walang Kapalit ★ | Donguri System Team 5ちゃんねる