解析用に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" );
}
}
探検
w3m その8
589580
2017/12/08(金) 12:32:06.89590580
2017/12/08(金) 12:33:40.63 [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)]
^^^^ 不具合
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)]
^^^^ 不具合
2017/12/08(金) 15:37:22.39
取り敢えずこんな感じ?
ttps://pastebin.com/wtiNPhJm
baseタグのhrefを解釈する時に使われているparseURL関数で
引数のurlにスキームが存在しないとそのurlが
ローカルのものとして解釈されるのが原因だと思う。
lynxでは絶対URIじゃないbaseタグは無視している様なので
w3mでも無視していいかなと。
ttps://pastebin.com/wtiNPhJm
baseタグのhrefを解釈する時に使われているparseURL関数で
引数のurlにスキームが存在しないとそのurlが
ローカルのものとして解釈されるのが原因だと思う。
lynxでは絶対URIじゃないbaseタグは無視している様なので
w3mでも無視していいかなと。
592580
2017/12/08(金) 19:10:52.21 >>591
おお、gihyo.jp も普通に見れるようになってますね
個人的には、
HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
...
case HTML_BASE:
...
if( p && p[0]=='/' ) break; /* この一行を追加して、invalidな <base>タグを弾く */
if (!buf->baseURL)
で良いかなー、とか検討中だった
スキーマの使われ方とかまだ見てないですが、利用した方がベターっぽいですね
インライン画像がたまに表示されない気がするけど、気のせいだろか?
もうちょっと見てみます
おお、gihyo.jp も普通に見れるようになってますね
個人的には、
HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
...
case HTML_BASE:
...
if( p && p[0]=='/' ) break; /* この一行を追加して、invalidな <base>タグを弾く */
if (!buf->baseURL)
で良いかなー、とか検討中だった
スキーマの使われ方とかまだ見てないですが、利用した方がベターっぽいですね
インライン画像がたまに表示されない気がするけど、気のせいだろか?
もうちょっと見てみます
593591
2017/12/08(金) 21:36:35.12594580
2017/12/09(土) 09:48:30.95 >>591
[file.c]
HTMLlineproc2body( )
case HTML_BASE: にて、
base=NULL としてしまうと、サイトの初回訪問時(=画像がキャッシュされていない状態)では、インライン画像が表示されないみたいです
ParsedURL *base は、HTMLlineproc2bodya の先頭の方で、バッファの URL によって初期化されてて、NULL にしては駄目っぽい
[file.c]
HTMLlineproc2body( )
case HTML_BASE: にて、
base=NULL としてしまうと、サイトの初回訪問時(=画像がキャッシュされていない状態)では、インライン画像が表示されないみたいです
ParsedURL *base は、HTMLlineproc2bodya の先頭の方で、バッファの URL によって初期化されてて、NULL にしては駄目っぽい
595580=594
2017/12/09(土) 18:28:47.68 すまん、完全オリジナルじゃなくて debian の git patch をあてた方でチェックしてた…
base 変数はなかった
混乱させてすまん
base 変数はなかった
混乱させてすまん
596580
2017/12/10(日) 12:28:50.09 >>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
オリジナルにこのパッチを当てた時は問題なかったです
お騒がせしました(一応報告まで)
テスト方法(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
597名無しさん@お腹いっぱい。
2017/12/29(金) 06:58:35.15 誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。
グーグル検索⇒『宮本のゴウリエセレレ』
2HILOH1I8V
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。
グーグル検索⇒『宮本のゴウリエセレレ』
2HILOH1I8V
598名無しさん@お腹いっぱい。
2018/01/15(月) 00:58:04.24 githubあたりに公式で置いてほしい…
パッチが分散しすぎてorz
いまはとりあえず本家が追いつくまでdebianから落としたやつがいいのかな?
sixel関連のパッチの置き場所が無いのでここで質問してみたテスト
いやね、0.5.3->deb系パッチ->sixelパッチ->data-urlパッチ->data-srcパッチ順番だと
本家0.5.3対象でdiff作った奴とはconflictするんで。
パッチが分散しすぎてorz
いまはとりあえず本家が追いつくまでdebianから落としたやつがいいのかな?
sixel関連のパッチの置き場所が無いのでここで質問してみたテスト
いやね、0.5.3->deb系パッチ->sixelパッチ->data-urlパッチ->data-srcパッチ順番だと
本家0.5.3対象でdiff作った奴とはconflictするんで。
2018/01/15(月) 08:02:57.35
sf.netのアカウント持ってる人全員inactiveなのでgithubに移行のしようもないからな…
600名無しさん@お腹いっぱい。
2018/02/07(水) 08:02:38.47 おはようございます、何方か
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立ち上げてサインイン→購入ボタン以下略なので)
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立ち上げてサインイン→購入ボタン以下略なので)
2018/02/14(水) 09:56:27.98
☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
602名無しさん@お腹いっぱい。
2018/03/19(月) 20:59:13.00 w3mでgmail使えないですか?
サインイン出来ません。
設定とか何かあるのでしょうか?
サインイン出来ません。
設定とか何かあるのでしょうか?
2018/03/20(火) 11:53:02.23
>> 602
サインインできますよ。画面の変化が遅いのでじっくり待ってみてください。
「簡易HTMLで表示」とかいうボタンを押す。
でも、実用する気になれないな。
サインインできますよ。画面の変化が遅いのでじっくり待ってみてください。
「簡易HTMLで表示」とかいうボタンを押す。
でも、実用する気になれないな。
604名無しさん@お腹いっぱい。
2018/03/30(金) 22:36:26.24 ubntuのw3mならgmailログインできました。
でも、cygwin上でのw3mはgmailログイン出来ないんだ。。。
要求されたページは無効ですって出るし、そもそもパスワード 入れる箇所がないのよね。
でも、cygwin上でのw3mはgmailログイン出来ないんだ。。。
要求されたページは無効ですって出るし、そもそもパスワード 入れる箇所がないのよね。
2018/03/31(土) 16:48:43.05
バージョンは?
606名無しさん@お腹いっぱい。
2018/04/01(日) 18:06:30.02 # 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
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
607名無しさん@お腹いっぱい。
2018/04/01(日) 18:09:06.73 ちなみに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
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
608名無しさん@お腹いっぱい。
2018/05/22(火) 02:48:56.58 知り合いから教えてもらったパソコン一台でお金持ちになれるやり方
時間がある方はみてもいいかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
JPQYB
時間がある方はみてもいいかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
JPQYB
609名無しさん@お腹いっぱい。
2018/10/10(水) 16:32:54.72 質問させてください
google検索した時に左に出てくるアレ邪魔じゃないですか?
greasmonkeyみたいにサイトごとにhtml弾く方法ありますか
よろしくお願いします
google検索した時に左に出てくるアレ邪魔じゃないですか?
greasmonkeyみたいにサイトごとにhtml弾く方法ありますか
よろしくお願いします
610名無しさん@お腹いっぱい。
2018/10/10(水) 16:52:27.282018/11/28(水) 10:42:33.60
ここ何ヶ月かw3mで5ちゃんねるに投稿できなかった。
403 Forbidden
nginx/1.12.1
というエラーメッセージ。
ユーザーエージェントを調整したら書けるようになったわ。
FireFoxの新しいやつだよ、と名乗る感じ。
403 Forbidden
nginx/1.12.1
というエラーメッセージ。
ユーザーエージェントを調整したら書けるようになったわ。
FireFoxの新しいやつだよ、と名乗る感じ。
612名無しさん@お腹いっぱい。
2019/02/12(火) 01:21:06.86 書き込みテスト
613名無しさん@お腹いっぱい。
2019/02/12(火) 01:21:37.27 >>611
本当だ、書き込めた。
本当だ、書き込めた。
2019/02/18(月) 03:08:44.32
使わないコードページ削れるパッチ Sc_738476.gz
試しにksx1001,uhc,johab取り除いた所1275408->1182128バイトへ
試しにksx1001,uhc,johab取り除いた所1275408->1182128バイトへ
2019/03/08(金) 06:44:51.03
書ける板と書けない板が生じてる模様。
プログラム板には書けるんだが、自作PCやハードウェアは Forbidden になる。
このスレッドはどうだろうか。
プログラム板には書けるんだが、自作PCやハードウェアは Forbidden になる。
このスレッドはどうだろうか。
2019/05/22(水) 09:42:53.08
Google の表示がおかしい。
直接の原因は a 要素の中に div 要素があるから、つまり HTML5 だからということかなあ。
とはいえ、リンクがいつものテキストではなくテキストの手前にあるというだけだから
リンクが判りにくいけど慣れれば平気ということになるのかな。
Google 自体は w3m じゃなくてもいいけどその先を w3m で見たいということも
あるんだけどな。
直接の原因は a 要素の中に div 要素があるから、つまり HTML5 だからということかなあ。
とはいえ、リンクがいつものテキストではなくテキストの手前にあるというだけだから
リンクが判りにくいけど慣れれば平気ということになるのかな。
Google 自体は w3m じゃなくてもいいけどその先を w3m で見たいということも
あるんだけどな。
617616
2019/05/23(木) 17:21:41.54 なんか、このままの方が快適じゃないかという気がしてきた。
ESC-m のメニューは使い物にならないけど元々使ってないし。
ESC-m のメニューは使い物にならないけど元々使ってないし。
2019/05/24(金) 14:37:51.89
619名無しさん@お腹いっぱい。
2019/05/24(金) 19:45:00.45 今はjavascript 有効ブラウザじゃないとgmailログイン出来ないのね。
w3mユーザーオワタ
w3mユーザーオワタ
2019/06/02(日) 09:49:39.82
2019/06/23(日) 00:20:36.25
質問させてください!
よく行くWebページを自分好みに整形したいです
構想は
1. w3mでページにアクセス
2. なんらかの方法でpythonに渡して整形
3. 整形したものを再びw3mに表示
です.
2と3の方法が分かりません.
ちなみに,スレの中で出てた「フィルター」がこの機能でしょうか?
よく行くWebページを自分好みに整形したいです
構想は
1. w3mでページにアクセス
2. なんらかの方法でpythonに渡して整形
3. 整形したものを再びw3mに表示
です.
2と3の方法が分かりません.
ちなみに,スレの中で出てた「フィルター」がこの機能でしょうか?
2019/06/23(日) 06:25:15.56
>>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
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
2019/06/23(日) 12:17:05.62
2019/06/23(日) 15:45:01.17
最初のところはcurlとかwgetとかでやったほうがいいんでねえの?
2019/06/23(日) 21:09:34.15
>>624は頭悪そう
2019/06/28(金) 00:37:34.49
最初のところはw3mで閲覧中に | 入力にしたほうがいいんでねえの?
2019/06/29(土) 07:23:16.16
ブログとか読むのに Perl の HTTP::Proxy 使っていろいろやってたよ。
整形だけでなく、どの記事を読んだかとか SQLite で管理してた。
最近は https だからローカルサーバに URL を渡して処理するね。
こっちも検索結果のマージとか、いろいろなことに利用してる。
整形だけでなく、どの記事を読んだかとか SQLite で管理してた。
最近は https だからローカルサーバに URL を渡して処理するね。
こっちも検索結果のマージとか、いろいろなことに利用してる。
628名無しさん@お腹いっぱい。
2019/09/05(木) 01:09:36.88 難しい事してるんだな。どんな風に管理するんだろ。
まああまり頭良い使い方は向いてないだろうな。
自分が頭良くない事は痛いほどに痛感する重言する。
>>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
------
まああまり頭良い使い方は向いてないだろうな。
自分が頭良くない事は痛いほどに痛感する重言する。
>>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
------
629名無しさん@お腹いっぱい。
2019/09/05(木) 01:10:41.21 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'
その時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'
630名無しさん@お腹いっぱい。
2019/09/05(木) 01:15:40.40 #!/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')
# 見れなくなった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')
631名無しさん@お腹いっぱい。
2019/09/05(木) 01:16:45.84 # 飛ぶ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
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
632名無しさん@お腹いっぱい。
2019/09/05(木) 01:18:46.25 以下みたいに実行。動かなかったらごめんな。でも俺の環境だと動いてる。
w3m file:///cgi-bin/google.zsh?'わずかばかりの 運の悪さを 恨んだりして'
w3m file:///cgi-bin/google.zsh?'わずかばかりの 運の悪さを 恨んだりして'
633名無しさん@お腹いっぱい。
2019/09/05(木) 06:03:14.23 色々変な事してるなsubmitされて来て完成されてる文字列を+を%20とかに変える必要ないな。
inputってdefaultで入ってる文字列の方を加工すべきで。
後やっぱ一度に表示しないと戻る時にゴミが入りすぎるな。
まあ直さないんだけど。ノシ。
inputってdefaultで入ってる文字列の方を加工すべきで。
後やっぱ一度に表示しないと戻る時にゴミが入りすぎるな。
まあ直さないんだけど。ノシ。
634名無しさん@お腹いっぱい。
2019/09/05(木) 18:12:55.36 やっぱ後でやっつけで直す。
635名無しさん@お腹いっぱい。
2019/09/05(木) 19:33:02.44 #!/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
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
636名無しさん@お腹いっぱい。
2019/09/05(木) 19:33:51.68 <<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
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
637名無しさん@お腹いっぱい。
2019/09/05(木) 19:35:35.50 まだ色々間違ってるだろうけど、まあ適当には使えるじゃないか。
おしまい。
おしまい。
638名無しさん@お腹いっぱい。
2019/09/05(木) 19:38:44.80 あ、一ヶ所だけnum=が10になっちゃってるから手動で直して。
639名無しさん@お腹いっぱい。
2019/09/06(金) 01:07:27.43 明日か明後日には検索出来ない文字列と、時間指定の対応をする。
640名無しさん@お腹いっぱい。
2019/09/06(金) 02:07:31.95 #!/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
# これだけで良かったのか簡単になった。でも半分寝てるから何処か間違えてるだろう。
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
641名無しさん@お腹いっぱい。
2019/09/06(金) 02:08:09.58 <<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
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
642名無しさん@お腹いっぱい。
2019/09/06(金) 03:07:34.05 何度もごめん見直して無い部分は大概間違ってるな。
そもそも最初testしてた時のcodeがまったくいらない。
まったく分けから無く見えてるなこれじゃ。
そもそも最初testしてた時のcodeがまったくいらない。
まったく分けから無く見えてるなこれじゃ。
643名無しさん@お腹いっぱい。
2019/09/06(金) 03:09:12.97 #!/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
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
644名無しさん@お腹いっぱい。
2019/09/06(金) 07:26:48.59 #!/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
#おかしいな寝る前は対処出来てたんだけど起きたら世界が変わってた。変な所を一度消す。
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
645名無しさん@お腹いっぱい。
2019/09/06(金) 18:14:55.56 #!/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
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
646名無しさん@お腹いっぱい。
2019/09/06(金) 18:15:42.68 # この星の一等賞んなりたいのw3mで俺は!そんだけ!
# 変数UNIQ関係は検索した文字列がcaseの命令と重ならないようにしている。
# それはw3mの起動ごとに変わるはず。もしかしたらいらないのかな。
# 変数UNIQ関係は検索した文字列がcaseの命令と重ならないようにしている。
# それはw3mの起動ごとに変わるはず。もしかしたらいらないのかな。
647名無しさん@お腹いっぱい。
2019/09/06(金) 18:18:11.34 あーまた間違える。さっきまでとまた世界が変わってる。
648名無しさん@お腹いっぱい。
2019/09/06(金) 18:30:16.64 #!/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
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
649名無しさん@お腹いっぱい。
2019/09/06(金) 18:33:46.29 全然違うわ。なんなんだよ。
650名無しさん@お腹いっぱい。
2019/09/06(金) 19:09:05.53 #!/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
# あってるのかな。
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
651名無しさん@お腹いっぱい。
2019/09/07(土) 00:34:24.46 #!/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
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
652名無しさん@お腹いっぱい。
2019/09/07(土) 00:43:08.66 formから流れてくるものはqueryの変更をしない事にした。ニュースを検索したいのに「すべて」を
検索してしまう事への対応。
Shift_JISは変えないと、formから流れてくる文字の検索が失敗する。
大体これで前と一緒な感じがするな。ただ眠るとどうだろうな。
まあ誰か役に立てば。
検索してしまう事への対応。
Shift_JISは変えないと、formから流れてくる文字の検索が失敗する。
大体これで前と一緒な感じがするな。ただ眠るとどうだろうな。
まあ誰か役に立てば。
653名無しさん@お腹いっぱい。
2019/09/07(土) 01:02:48.50 はい間違えてる。なんなの俺。俺の頭どうしちゃったんだよ。
654名無しさん@お腹いっぱい。
2019/09/07(土) 01:05:37.74 #!/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
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
655名無しさん@お腹いっぱい。
2019/09/07(土) 01:13:24.47 あれ、これ駄目か、振り出しに戻ってるか。
656名無しさん@お腹いっぱい。
2019/09/07(土) 01:22:02.52 #!/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
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
657名無しさん@お腹いっぱい。
2019/09/07(土) 01:23:44.21 あ、num=10のままになってるな。
これでもうもう間違いないっしょ。
だからnumは自分で変えてくんろ。
これでもうもう間違いないっしょ。
だからnumは自分で変えてくんろ。
658名無しさん@お腹いっぱい。
2019/09/07(土) 01:50:58.58 UTF-8に変える所にgは要らないな。このぐらいじゃ貼らないけど。
659名無しさん@お腹いっぱい。
2019/09/07(土) 01:57:53.91 てか直さないと出力の中のも変えちゃうか。あーまた間違えてる。
660名無しさん@お腹いっぱい。
2019/09/07(土) 02:05:07.89 #!/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
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
661名無しさん@お腹いっぱい。
2019/09/07(土) 02:08:37.88 良かった。気づいて。これは申し訳ないレベルだった。
よしもういいだろ。もういいだろ。
よしもういいだろ。もういいだろ。
662名無しさん@お腹いっぱい。
2019/09/07(土) 14:22:20.68 #!/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
# より短く分かりやすく、無駄な事をしてる部分を削った。
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
663名無しさん@お腹いっぱい。
2019/09/07(土) 15:01:09.86 #!/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
# 直し忘れの修正。
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
664名無しさん@お腹いっぱい。
2019/09/07(土) 15:35:13.55 #!/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
# ごめんこれだけで良かったの修正。
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
665名無しさん@お腹いっぱい。
2019/09/07(土) 19:35:00.39 一応簡単に説明しくおくと、最近googleで検索してもlink先へ飛べなくなった事への対
処をしている。googleが送ってきたソースをsedで加工して表示している。<a></a>の中に
<div>があってそれが原因なので消しているだけ。
他にそのままgoogleを開いたまま検索した場合、検索は出来るが出てくるソースはまた
上で書いた問題を含む為、cgiを経由するように書き換える、だからまた同じようにsedで
加工されたページが表示される。その繰り返し。
処をしている。googleが送ってきたソースをsedで加工して表示している。<a></a>の中に
<div>があってそれが原因なので消しているだけ。
他にそのままgoogleを開いたまま検索した場合、検索は出来るが出てくるソースはまた
上で書いた問題を含む為、cgiを経由するように書き換える、だからまた同じようにsedで
加工されたページが表示される。その繰り返し。
666名無しさん@お腹いっぱい。
2019/09/07(土) 19:37:27.95 いや、原因違うかも。まあ動いてるから良しとする。
667名無しさん@お腹いっぱい。
2019/09/07(土) 19:40:18.57 やっぱちょっと違うな。<div></div>に変えて動いてるわけだからな。
668名無しさん@お腹いっぱい。
2019/09/07(土) 19:41:22.71 これは動く。
<a href='test.html'>test<div></div></a>
これ駄目。
<a href='test.html'><div>test</div></a>
<a href='test.html'>test<div></div></a>
これ駄目。
<a href='test.html'><div>test</div></a>
669名無しさん@お腹いっぱい。
2019/09/07(土) 19:50:46.58 ただ面倒なので、duckduckgoがお勧め。
670名無しさん@お腹いっぱい。
2019/09/08(日) 01:27:48.66 #!/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
# 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
671名無しさん@お腹いっぱい。
2019/09/08(日) 01:40:19.68 #!/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
# 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
672名無しさん@お腹いっぱい。
2019/09/08(日) 01:55:42.21 このぐらいの変更で貼り付けないけど、gidとuid使ったほうがいいのかも。
673名無しさん@お腹いっぱい。
2019/09/08(日) 01:57:51.40 UNIQ=$(basename $(ps -p $PPID -o pid,ppid,gid,uid,lstart |md5sum))
ここの話しね。
ここの話しね。
674名無しさん@お腹いっぱい。
2019/09/08(日) 02:52:39.37 UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum))
このぐらいでいいな。後printfの方が速いな。
いまいちここ好きじゃなんだよな。
このぐらいでいいな。後printfの方が速いな。
いまいちここ好きじゃなんだよな。
675名無しさん@お腹いっぱい。
2019/09/08(日) 15:05:16.58 #!/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
# すまん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
676名無しさん@お腹いっぱい。
2019/09/09(月) 02:05:35.75 最後にちょっとだけ拡張してみた。これでそろそろ辞めるわ。
変数大文字ですまんな、なんかそうなってしまった。
まあまた間違いのラッシュだろけど。
現在のurlが一番上に表示されるようにしたからそれを見ながら、
二つ目のformにsedに渡す文字列を入力してsubmitするとその変更したurlに変わる。
だからs/ja/en/とすると英語のページに変わりますよという事。
変数大文字ですまんな、なんかそうなってしまった。
まあまた間違いのラッシュだろけど。
現在のurlが一番上に表示されるようにしたからそれを見ながら、
二つ目のformにsedに渡す文字列を入力してsubmitするとその変更したurlに変わる。
だからs/ja/en/とすると英語のページに変わりますよという事。
677名無しさん@お腹いっぱい。
2019/09/09(月) 02:13:49.61 #!/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
# やられた停電だよ。まじか。
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
678名無しさん@お腹いっぱい。
2019/09/09(月) 02:14:23.25 <<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
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
679名無しさん@お腹いっぱい。
2019/09/09(月) 02:17:41.26 そうだった。xsel -s使ってるから。xsel -sの内容消えるからね。
680名無しさん@お腹いっぱい。
2019/09/09(月) 02:43:47.91 #!/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
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
681名無しさん@お腹いっぱい。
2019/09/09(月) 02:44:15.88 <<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
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
682名無しさん@お腹いっぱい。
2019/09/09(月) 03:07:59.08 >>675で完成してるからな。後は余興。ノシ。PC触り過ぎてきもちわり。
683名無しさん@お腹いっぱい。
2019/09/09(月) 07:23:21.45 すまん。やっぱ寝ぼけてたな。$HOME/debugにfileを書き出してる。
684名無しさん@お腹いっぱい。
2019/09/09(月) 07:26:17.19 #!/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
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
685名無しさん@お腹いっぱい。
2019/09/09(月) 07:26:52.00 <<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
# もう間違っててもちょっと離れる。
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
# もう間違っててもちょっと離れる。
686名無しさん@お腹いっぱい。
2019/09/09(月) 07:30:02.79 まじすまんな。上の$HOME/debugにfileを書いちゃってるから。
まあダメージないだろうけど。この失敗は教訓にしよう。
まあダメージないだろうけど。この失敗は教訓にしよう。
687名無しさん@お腹いっぱい。
2019/09/09(月) 07:35:59.90 幸い>>でつけたしだから。万が一があってもあわてずにな。ノシ。
688名無しさん@お腹いっぱい。
2019/09/09(月) 18:59:11.46 すまん。xselなくてもいけるなPIPE_BUFでも普通に%s使えるっぽいな。
直すか。
直すか。
689名無しさん@お腹いっぱい。
2019/09/09(月) 19:18:13.15 いや、どうやら無理だな。後sedで変更する値が見えてるままの値じゃなくて
検索に入ってる文字列を変更するようになってるけと、これは直さないほうが使いやすいな。
後ほんとsedに流し込んでるだけなので、危険な事すれば危険なのでね。
検索に入ってる文字列を変更するようになってるけと、これは直さないほうが使いやすいな。
後ほんとsedに流し込んでるだけなので、危険な事すれば危険なのでね。
690名無しさん@お腹いっぱい。
2019/09/09(月) 19:36:12.85 # 下部分だけちょっと改良。
# でも前のほうが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
# でも前のほうが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
691名無しさん@お腹いっぱい。
2019/09/09(月) 19:58:46.24 どうでもいいだろうけど以下の部分は、""いらないな。
'<input name=field value='"\$(xsel -s)"' type=hidden>'\
こう見たほうが素直に何してるか分かるかも。\\\&が非常に自分でも分かり辛い。
'<input name=field value='\$(xsel -s)' type=hidden>'\
'<input name=field value='"\$(xsel -s)"' type=hidden>'\
こう見たほうが素直に何してるか分かるかも。\\\&が非常に自分でも分かり辛い。
'<input name=field value='\$(xsel -s)' type=hidden>'\
692名無しさん@お腹いっぱい。
2019/09/11(水) 02:42:21.38 w3mは適当にformだけを切り出してもちゃんと描画してくれるから、
適当に抜き出してw3m-control: SUBMITを使えば、
10行20行に満たないコードでいろいろ書けちゃうね。shで書くよりも短く書ける。
やっぱw3m作った人はセンスの塊だと思うわ。いつか俺はテコ入れしてバージョン上げたいね。
色々書いたから載せたい所だか、まあ間違い直しでスレッドが埋まっちゃうから無理だな。
5chはmoreなんだな。lessじゃない。
適当に抜き出してw3m-control: SUBMITを使えば、
10行20行に満たないコードでいろいろ書けちゃうね。shで書くよりも短く書ける。
やっぱw3m作った人はセンスの塊だと思うわ。いつか俺はテコ入れしてバージョン上げたいね。
色々書いたから載せたい所だか、まあ間違い直しでスレッドが埋まっちゃうから無理だな。
5chはmoreなんだな。lessじゃない。
2019/09/11(水) 17:50:18.92
自己顕示欲の塊みたいなやつだな
694名無しさん@お腹いっぱい。
2019/09/19(木) 19:41:51.98 5chでよく聞く気持ち悪い台詞だな。
2019/09/20(金) 08:49:56.46
そんなにたくさん5chを見てるのか
2019/12/07(土) 20:24:38.61
「誰に向けて書いてんだよ?」とは思うけど、どうせ過疎スレだし…
そんなことより Google の仕様がまた変わったな。
テキストがリンクになってる。a 要素の中に div 要素が無い。
まあ、この変更に気付いたのは lynx で見てる時なんだが。
そんなことより Google の仕様がまた変わったな。
テキストがリンクになってる。a 要素の中に div 要素が無い。
まあ、この変更に気付いたのは lynx で見てる時なんだが。
2019/12/08(日) 08:31:19.86
俺の環境だとgoogle検索結果の <a> 要素中に <div> が入ってる。
User-Agent を見て出力形式を振り分けてるのかも知れん。
lynx は対応してるけど w3m は放置されてる感じで。
User-Agent を見て出力形式を振り分けてるのかも知れん。
lynx は対応してるけど w3m は放置されてる感じで。
2019/12/16(月) 05:18:09.36
Lynx で google が使えなくなった視覚障害者の話がちょっと前にバズってたけど
ちょっとは影響があったのかな? でも、リンクが辿れるだけマシになったとは言え、
圧倒的に情報量が少ない。
User-Agent が Mozilla 系でも使えた頃が一番見やすかった。まだ今年の話だと思うが、
まともに見られなくなり User-Agent を Lynx 系にして凌いでいた。しかし、1 ヶ月
ちょっと前に完全にダメになってしまった。それまでにもちょいちょい表示が崩れることが
あったが大抵リロードで解決できていたのに。JavaScript 必須、GET より POST の時代ですな。
StartPage もいつからか次ページに移動できなくなったし、DuckDuckGO も何だか
見辛かったのだが、今回の騒動で Lite 版があるのを知って使い勝手がマシになった。
とは言え、タイトルはぶったぎりだし、検索の質はやはり劣るか。
本家の CVS から落とせなくなってからは、Debian 管理化の Git リポジトリを利用してるけど
User-Agent を Lynx 系にしようとしたとき siteconf に対応していることに気付いた。
それ以来便利に使っている。
ちょっとは影響があったのかな? でも、リンクが辿れるだけマシになったとは言え、
圧倒的に情報量が少ない。
User-Agent が Mozilla 系でも使えた頃が一番見やすかった。まだ今年の話だと思うが、
まともに見られなくなり User-Agent を Lynx 系にして凌いでいた。しかし、1 ヶ月
ちょっと前に完全にダメになってしまった。それまでにもちょいちょい表示が崩れることが
あったが大抵リロードで解決できていたのに。JavaScript 必須、GET より POST の時代ですな。
StartPage もいつからか次ページに移動できなくなったし、DuckDuckGO も何だか
見辛かったのだが、今回の騒動で Lite 版があるのを知って使い勝手がマシになった。
とは言え、タイトルはぶったぎりだし、検索の質はやはり劣るか。
本家の CVS から落とせなくなってからは、Debian 管理化の Git リポジトリを利用してるけど
User-Agent を Lynx 系にしようとしたとき siteconf に対応していることに気付いた。
それ以来便利に使っている。
2019/12/19(木) 22:17:05.18
>>698
w3mは高機能でテーブルのレイアウトができて視覚障害者は利用しないので、Lynx対応の方が社会的な要求が強いのでしょうね。
いきなりLynx-devのメール流量が増えた時は、私も驚きました。
w3mは高機能でテーブルのレイアウトができて視覚障害者は利用しないので、Lynx対応の方が社会的な要求が強いのでしょうね。
いきなりLynx-devのメール流量が増えた時は、私も驚きました。
2020/06/30(火) 16:54:57.14
googleさんの検索結果ページだけど、またw3mで使い物になるように改善されたかな。
皆さんどうですか?
自分とこ、色々手を入れちゃったせいで一般的な環境じゃないんだわ。
皆さんどうですか?
自分とこ、色々手を入れちゃったせいで一般的な環境じゃないんだわ。
2020/07/11(土) 18:42:08.43
2020/10/13(火) 23:15:09.45
ぬるぽ
2020/10/15(木) 17:32:38.52
ぬるぬるぽ
2020/12/09(水) 09:26:06.05
2020/12/17(木) 07:19:07.67
Twitter 逝ったぁ!
2020/12/17(木) 20:49:45.01
Twitter 閲覧する local CGI とか作ってる方っていらっしゃらないですかね……?
2020/12/19(土) 05:44:43.76
>>706
スクレイピングする方法はググれば沢山見つかるから簡単に自作できるんじゃない?
っていうか自分もこれから作ろうと思ってる
あんま関係ないけど、とあるサイトで w3m で画像が表示されなくなったことがあって
なんか lazy load とかいうやつらしくて
そのときは串自作して対応したよ
スクレイピングする方法はググれば沢山見つかるから簡単に自作できるんじゃない?
っていうか自分もこれから作ろうと思ってる
あんま関係ないけど、とあるサイトで w3m で画像が表示されなくなったことがあって
なんか lazy load とかいうやつらしくて
そのときは串自作して対応したよ
2020/12/19(土) 09:31:37.92
>>706
Twitterは、user-agentをBot等に変えれば行けませんか?
Twitterは、user-agentをBot等に変えれば行けませんか?
2020/12/21(月) 23:40:46.24
>>708
いままで mobile.twitter.com でモバイル版が提供されてて
w3m などのテキストブラウザでも HTML で直接閲覧できていたんですが、
2020-12-16 で mobile.twitter.com 自体が廃止になったので、
今後は API 叩いたり JSON いじったりしないとダメじゃないかと思います。
いままで mobile.twitter.com でモバイル版が提供されてて
w3m などのテキストブラウザでも HTML で直接閲覧できていたんですが、
2020-12-16 で mobile.twitter.com 自体が廃止になったので、
今後は API 叩いたり JSON いじったりしないとダメじゃないかと思います。
710名無しさん@お腹いっぱい。
2020/12/22(火) 07:39:15.54 試してみれば見れるのは分かるだろうに
なんで適当な事書くのかね
なんで適当な事書くのかね
2020/12/22(火) 07:57:03.19
そっか、検索でツイート引っかかるよう抜け道残してあるんだな
2020/12/23(水) 20:46:52.98
え、User-Agentを「Bot」にしても、ログインすると
「このブラウザは現在サポートされていません。」
と出るんだけど、何か足りない設定があるのかな
「このブラウザは現在サポートされていません。」
と出るんだけど、何か足りない設定があるのかな
2020/12/24(木) 07:16:18.68
>>713
ログインしない状態での閲覧はできましたが、ログインしてからの操作は、こちらもできませんでした。
user-agent以外の手段が必要そうです。
なお、閲覧するだけなら、nitterを使うとすっきりした表示になるようです。
ログインしない状態での閲覧はできましたが、ログインしてからの操作は、こちらもできませんでした。
user-agent以外の手段が必要そうです。
なお、閲覧するだけなら、nitterを使うとすっきりした表示になるようです。
2020/12/25(金) 00:27:22.83
ありがとう、やっぱり見れないのね
JavaScriptの勉強してlocal CGIを書くかなあ
JavaScriptの勉強してlocal CGIを書くかなあ
716709
2020/12/25(金) 09:34:43.94 すみません、私は普段ログインせずに閲覧するだけなのでなんとか見れるようになりましたが、
確かにログインするとダメですね……。
ちなみに、 UA をボットにするのは、 README.siteconf にそのものズバリな例が載っていました。
確かにログインするとダメですね……。
ちなみに、 UA をボットにするのは、 README.siteconf にそのものズバリな例が載っていました。
717709
2020/12/25(金) 09:37:27.24 あ、あと、ボットにして見れるのも最新 20 件くらいだけで、ページ送りはできないみたいですね。
718709
2020/12/25(金) 20:30:40.04 >>714
nitter 良いですね。 siteconf に設定しました。
url "https://twitter.com/"
substitute_url "https://nitter.net/"
nitter 良いですね。 siteconf に設定しました。
url "https://twitter.com/"
substitute_url "https://nitter.net/"
719名無しさん@お腹いっぱい。
2021/04/25(日) 22:21:20.66 Opening socket... と表示されてる時に接続が切れると
うんともすんともと言わなくなるんだな
どれだけタブを開いていても固まってしまうから kill して全て破棄するしかなくなる
うんともすんともと言わなくなるんだな
どれだけタブを開いていても固まってしまうから kill して全て破棄するしかなくなる
2021/04/29(木) 05:14:50.57
それはまだ接続してないんじゃないか。
「接続が切れる」とは何を指してる?
「接続が切れる」とは何を指してる?
2021/04/29(木) 06:09:49.92
文字通りだろ
光だと経験ないかもしれないが
ボロいADSLなんかで使えば分かる
最初からオフラインだと固まらない
光だと経験ないかもしれないが
ボロいADSLなんかで使えば分かる
最初からオフラインだと固まらない
2021/04/29(木) 06:22:36.78
Opening socket... の少し後で切れた場合は操作はできても
子プロセスがずっと残ったりする
子プロセスがずっと残ったりする
2021/08/12(木) 15:41:18.59
|ヽ|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_/
|/ 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_/
2021/08/12(木) 16:41:27.11
>>723
13年も経って礼か。時効だろう。
13年も経って礼か。時効だろう。
2021/11/21(日) 23:17:59.97
光回線だがOpening socket...で固まると何も操作できなくなるな
killするしかない
killするしかない
2022/05/28(土) 22:25:49.63
w3mで2chはかけない? エラーになるけど。
727名無しさん@お腹いっぱい。
2022/05/29(日) 04:46:10.90 >>725
-4オプションをつけてみて
-4オプションをつけてみて
2022/05/29(日) 13:14:51.00
そんな事はとっくに試してる
729名無しさん@お腹いっぱい。
2022/05/29(日) 19:01:03.82 うそつけ、例をいえよ、ゴミ
730名無しさん@お腹いっぱい。
2022/05/29(日) 19:01:37.71 礼
2022/05/29(日) 20:46:32.67
ipv6なんて無い昔からの挙動だからな>>719-
732名無しさん@お腹いっぱい。
2022/10/26(水) 20:06:28.47 redhatでmake出来るソースどこかにありますか?
dnf searchではヒットするけど
installしようとするとエラーで終わってしまいます
dnf searchではヒットするけど
installしようとするとエラーで終わってしまいます
733名無しさん@お腹いっぱい。
2023/12/31(日) 13:37:00.69 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
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
734名無しさん@お腹いっぱい。
2023/12/31(日) 15:01:55.58 >>733 自己レス。
そもそも proxy 環境変数を見ないのだな。.w3m/config に書くのであって。
そもそも proxy 環境変数を見ないのだな。.w3m/config に書くのであって。
2024/03/27(水) 19:45:23.12
あぼーん
汚い汚物顔の強さと濃さかな
汚い汚物顔の強さと濃さかな
2024/03/27(水) 20:47:38.10
ガーシーが依頼したのか?
2024/03/27(水) 20:55:54.03
人生には謝罪しろ言うくせにな
738名無しさん@お腹いっぱい。
2025/03/24(月) 08:33:26.83 メモ。w3m ソースは github.com/tats/w3m/ の最新版を取得すると良いのかもしれない。sourceforge.net/projects/w3m/files/w3m/ や deb.debian.org/debian/pool/main/w/w3m/ でなく。
例えば CVE-2023-4255 (Published Date: 12/21/2023 Last Modified: 11/21/2024)
https://nvd.nist.gov/vuln/detail/CVE-2023-4255
は、
Commits on Jul 13, 2023
https://github.com/tats/w3m/commit/edc602651c506aeeb60544b55534dd1722a340d3
で解決されたように見える。が、sourceforge.net(最新2011-01-15) や deb.debian.org(最新2023-01-21) には梱包されてなさそう。
例えば CVE-2023-4255 (Published Date: 12/21/2023 Last Modified: 11/21/2024)
https://nvd.nist.gov/vuln/detail/CVE-2023-4255
は、
Commits on Jul 13, 2023
https://github.com/tats/w3m/commit/edc602651c506aeeb60544b55534dd1722a340d3
で解決されたように見える。が、sourceforge.net(最新2011-01-15) や deb.debian.org(最新2023-01-21) には梱包されてなさそう。
レスを投稿する
ニュース
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★2 [ニョキニョキ★]
- 日本と中国を結ぶ12航空路線で全便欠航 中国人に最も人気の海外旅行先は日本から韓国に [ぐれ★]
- 米中電話会談、トランプ氏は「米国側は中国にとっての台湾問題の重要性を理解する」 [1ゲットロボ★]
- 【東京・足立の車暴走】赤信号無視か 危険運転致死傷疑いも視野に捜査 逮捕された職業不詳の男性(37)は精神疾患で通院歴も ★3 [ぐれ★]
- 【音楽】「なんでこんなバカが国のトップなの?」 若者に人気のバンド「GEZAN」のマヒトゥ・ザ・ピーポーが高市総理に苦言 [シャチ★]
- 中国人「『日本は危ないから行かないように』と言われたが、日本に来たらとても安全だった」 [お断り★]
- 【岸田朗報】鰻(ウナギ)、ガチで3年以内に1匹1000円以下へ!!!! [782460143]
- 【実況】博衣こよりのえちえち朝こよ🧪
- 習「中国とアメリカは軍国主義(日本)を倒した仲間。勝利の成果を守るために協力すべきだ」とトランプに呼び掛け。高市早苗、終了。 [153490809]
- スキルス胃がんってあるじゃん?
- 【急募】巨人の人的補償プロテクトリストWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
- 【高市悲報】来年、習近平主席がアメリカに「国賓」として訪米。どうするんだよ高市・・・アメリカも敵に回すのか? [483862913]
