
Ubuntu日本語フォーラム
ログインしていません。
脱字がありました.
einundzwanzighundertsechs の投稿:
効果は「返信を投稿」に跳んだ後,「メッセージ」記入欄に以下の様な BBCode が挿入されていることです.
// もしかしてシングルクォート以外にも何か消えたのかな?
einundzwanzighundertsechs の投稿 #22の前半のスクリプトを Emacs にコピー&ペーストして .user.js の拡張子で保存後,FireFox にドラッグ&ドロップでインストールをテストしました.
2ヶ所のシングルクォート以外に消えた文字はないらしく,狙いどおりに動きました.
オフライン
einundzwanzighundertsechs による投稿:
hir0 さんの投稿:
#20 の 「ubuntu-ja-linked-quote」はお猿さん右クリックにも現れずに効果の方も出ていない様です。ubuntu-ja-linked-quote が働くのはそれぞれの投稿の右下の「引用」のリンクで post.php に跳んだときです.
viewtopic.php のページではお猿のアイコンには現れません.
効果は「返信を投稿」に跳んだ後,「メッセージ」記入欄にの様な BBCode が挿入されていることです.
// もしかしてシングルクォート以外にも何か消えたのかな?コード:
[quote][url=https://forums.ubuntulinux.jp/viewtopic.php?pid=55663#p55663]hir0 さんの投稿[/url]: …[/quote]こちらはそれで狙いどおりです.その生のBBCodeをマウスでテキストとして選択&コピー&ペーストすることで,入力の助けにしようというものです.
// ですから「そこまで便利にはならなかったけど…」なのです.
オフライン
hir0 による投稿:
einundzwanzighundertsechs による投稿:
hir0 さんの投稿:
#20 の 「ubuntu-ja-linked-quote」はお猿さん右クリックにも現れずに効果の方も出ていない様です。ubuntu-ja-linked-quote が働くのはそれぞれの投稿の右下の「引用」のリンクで post.php に跳んだときです.
viewtopic.php のページではお猿のアイコンには現れません.
効果は「返信を投稿」に跳んだ後,「メッセージ」記入欄にの様な BBCode が挿入されていることです.
// もしかしてシングルクォート以外にも何か消えたのかな?コード:
[quote][url=https://forums.ubuntulinux.jp/viewtopic.php?pid=55663#p55663]hir0 さんの投稿[/url]: …[/quote]こちらはそれで狙いどおりです.その生のBBCodeをマウスでテキストとして選択&コピー&ペーストすることで,入力の助けにしようというものです.
// ですから「そこまで便利にはならなかったけど…」なのです.
オフライン
hir0 による投稿:
einundzwanzighundertsechs による投稿:
hir0 さんの投稿:
#20 の 「ubuntu-ja-linked-quote」はお猿さん右クリックにも現れずに効果の方も出ていない様です。ubuntu-ja-linked-quote が働くのはそれぞれの投稿の右下の「引用」のリンクで post.php に跳んだときです.
viewtopic.php のページではお猿のアイコンには現れません.
効果は「返信を投稿」に跳んだ後,「メッセージ」記入欄にの様な BBCode が挿入されていることです.
// もしかしてシングルクォート以外にも何か消えたのかな?コード:
[quote][url=https://forums.ubuntulinux.jp/viewtopic.php?pid=55663#p55663]hir0 さんの投稿[/url]: …[/quote]こちらはそれで狙いどおりです.その生のBBCodeをマウスでテキストとして選択&コピー&ペーストすることで,入力の助けにしようというものです.
// ですから「そこまで便利にはならなかったけど…」なのです.
オフライン
hir0 さんの投稿:
すみません、よく解りませんでした。
FireFox のエラーコンソールに何か出ていませんか?
オフライン
しまった.エラーコンソールの確認の前に,
post.php=「返信を投稿」のページでお猿のアイコンを右クリックしたとき,
ubuntu-ja-linked-quote にチェックが付いているのを確認できますか?
オフライン
einundzwanzighundertsechs さんの投稿:
しまった.エラーコンソールの確認の前に,
post.php=「返信を投稿」のページでお猿のアイコンを右クリックしたとき,
ubuntu-ja-linked-quote にチェックが付いているのを確認できますか?
こちらでは、うまくできました。
回答者側でなんとかするという趣旨に沿うなかなか賢い方法だと思います。
オフライン
はい。
ubuntu-ja-linked-quoteのチェックは付いていました。
この投稿は「返信を投稿」からです。
取りあえず送信してみます。
オフライン
hir0 さん,
#27 - #28 は動作を確認するために送信したと言うことなのでしょうね?
説明不足で御免なさい.
ubuntu-ja-linked-quote を試してくださる方々へ.
スクリプトの動作は返事を「送信」しなくても確認できます.
管理者に報告の隣の引用のリンクを押してタイトルが「Ubuntu 日本語フォーラム / 返信を投稿」のページに跳んだ直後に,
普段ならばメッセージを入力するテキストエリアの中のいつもの
[quote=何某]…[/quote]
が
[quote][url=https://forums.ubuntulinux.jp/viewtopic.php?pid=5xxxx#p5xxxx]何某 さんの投稿[/url]: …[/quote]
に変化していれば,私の意図通りの動作です.
オフライン
[エラーコンソール]
エラー表示の後に次のメッセージです。
missing ) after argument list
次の段にスクリプトファイルのパスがリンク表示されています。
クリックすると最後から2行目(14行目の) '}' が反転表示されています。
きっと何か環境が違うか、私の操作や導入方法にミスがあるとは思うのですが皆さん出来ているのに私だけ出来ないのは少し寂し恥ずかしです。
やってみました、出来ませんでした、どうしましょ、だけでは能が無いとは思いますが今日はこんな感じで終わります。
何か教えて頂けること、アドバイスが有りましたら宜しくお願いします。
オフライン
einundzwanzighundertsechs さんの投稿:
しまった.エラーコンソールの確認の前に,
post.php=「返信を投稿」のページでお猿のアイコンを右クリックしたとき,
ubuntu-ja-linked-quote にチェックが付いているのを確認できますか?こちらでは、うまくできました。
回答者側でなんとかするという趣旨に沿うなかなか賢い方法だと思います。
試しに、こちらでもやってみました。
これすごいですね!!
やっぱ出来る人には出来るんだと関心しております。
einundzwanzighundertsechsさんできれば、誰にでも分かるように纏めてはどうでしょうか?
このままでは、分かる人には分かるけど、中にはよく分からないとおっしゃる方もいると思うので…。
せっかくだからここのWikiにでも書いてくだされば、皆さん幸せになると思うのですがいかがでしょうか?
vine_userさんへ
あ!御大、試し打ちでリンク先を貼りましたことお許し下さい。
オフライン
変数 href が展開されていないことに,今,気づきました.これは 埋め込みBBCodeの影響でシングルクォートが消えてしまった #20, #21 を修正せずに使った場合の表示です.
コードを再掲します.少し修正を加えました.
// ==UserScript== // @name ubuntu-ja-linked-quote // @namespace http://localhost/ // @description Hack for Ubuntu Japanese Forum: Insert Linked Quote // @include https://forums.ubuntulinux.jp/post.php?* // ==/UserScript== (function(){ var qid = new RegExp('&qid=(\\d+)$').exec(location.search); if (qid) { qid = qid[1]; var message = document.getElementsByName('req_message')[0]; message.value = message.value.replace(new RegExp('^\\[quote=([^\\]]+)\\]'), '[quote][url=' + location.protocol + '//' + location.host + '/viewtopic.php?pid=' + qid + '#p' + qid + ']$1 さんの投稿[/url]:\n\n'); } })();
// ==UserScript== // @name ubuntu-ja-post-number // @namespace http://localhost/ // @description Hack for Ubuntu Japanese Forum: Replace Post Number by BBcode // @include https://forums.ubuntulinux.jp/viewtopic.php?* // ==/UserScript== (function(){ var nbsp = String.fromCharCode(160); var list = document.evaluate('id("punviewtopic")/div[starts-with(@class,"blockpost")]/h2/span/span[@class="conr"]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); for (var i = 0; i < list.snapshotLength; ++ i) { var conr = list.snapshotItem(i); var post = conr.textContent.slice(0, -1); var href = conr.nextSibling.href; var user = document.evaluate('div[@class="box"]/div[@class="inbox"]/div[@class="postleft"]/dl/dt/strong/a', conr.parentNode.parentNode.parentNode, null, XPathResult.STRING_TYPE, null).stringValue; conr.textContent = nbsp + '[url=' + href + ']' + user + nbsp + 'さんの投稿' + nbsp + post + '[/url]' + nbsp; } })();
オフライン
#35 の einundzwanzighundertsechs さんへ。
私も最初は「意図した通り」の効果を想像して「引用」で確認しました。
でも「???」と思ったので「プレビュー」で確認も何時も通りだったので、どんどん違う方向に確認方法が広がってしまいました。
もしかしたら「引用」空では無い? 「送信」しなければ反映されない? から「スクリプトのコピペミス」や「GreaseMonkey」の操作方法が間違っている等と考えまくりです。
考えた割には手を掛ける部分には降れずに状況報告だけで申し訳ないです。
アドバイス頂いたエラーコンソールの結果は#36 に挙げました、何か有りましたらお願いします。
その後に#35 に気が付いたので、これを書いています。
また明日の夜にでも上手く動作するように弄ってみます。。。
オフライン
einundzwanzighundertsechs さんの投稿:
変数 href が展開されていないことに,今,気づきました.これは 埋め込みBBCodeの影響でシングルクォートが消えてしまった #20, #21 を修正せずに使った場合の表示です.
コードを再掲します.少し修正を加えました.コード:
// ==UserScript== // @name ubuntu-ja-linked-quote // @namespace http://localhost/ // @description Hack for Ubuntu Japanese Forum: Insert Linked Quote // @include https://forums.ubuntulinux.jp/post.php?* // ==/UserScript== (function(){ var qid = new RegExp('&qid=(\\d+)$').exec(location.search); if (qid) { qid = qid[1]; var message = document.getElementsByName('req_message')[0]; message.value = message.value.replace(new RegExp('^\\[quote=([^\\]]+)\\]'), '[quote][url= + location.protocol + '//' + location.host + '/viewtopic.php?pid=' + qid + '#p' + qid + ]$1 さんの投稿[/url]:\n\n'); } })();コード:
// ==UserScript== // @name ubuntu-ja-post-number // @namespace http://localhost/ // @description Hack for Ubuntu Japanese Forum: Replace Post Number by BBcode // @include https://forums.ubuntulinux.jp/viewtopic.php?* // ==/UserScript== (function(){ var nbsp = String.fromCharCode(160); var list = document.evaluate('id("punviewtopic")/div[starts-with(@class,"blockpost")]/h2/span/span[@class="conr"]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); for (var i = 0; i < list.snapshotLength; ++ i) { var conr = list.snapshotItem(i); var post = conr.textContent.slice(0, -1); var href = conr.nextSibling.href; var user = document.evaluate('div[@class="box"]/div[@class="inbox"]/div[@class="postleft"]/dl/dt/strong/a', conr.parentNode.parentNode.parentNode, null, XPathResult.STRING_TYPE, null).stringValue; conr.textContent = nbsp + '[url= + href + ]' + user + nbsp + 'さんの投稿' + nbsp + post + '[/url]' + nbsp; } })();
einundzwanzighundertsechs さん、有難うございました。
無事に表示されました。
トピックをよく読まずに取りかかったのが悪かったようです、反省です。
GreaseMonkey 結構面白い使い方が出来そうですね、いろいろとありがとうございます。
オフライン
本筋から離れた話で恐縮です:
url= の BBCode タグが クォート を食べてしまいます.例えば,
tag = '[url=' + link + ']';
と入力するとプレビューおよびその下の編集エリアでクォートが落ち,
tag = '[url= + link + ]';
となります.#20, #21ではその事に気づいたものの対処が判らず付け足しの説明をしました.
投稿結果もクオートが落ちたままでした.
クオートを一つ余計に付けて,
tag = '[url='' + link + '']';
と投稿すれば,表示が望みどおり
tag = '[url=' + link + ']';
となることに気づいたのが#22です.プレビューの度に編集エリアのクォートを補充しなければならないのには閉口しました.
url='hogefoobar' と言うパターンが [ ] に囲まれている場合,BBCode の解釈の際,譬えコードブロックの中でもクォートが落ち,
url=hogefoobar を [ ] に囲ったパターンに変わってしまうようです.
ちなみに本投稿の,上記コードブロックの中では,上から順にクォートを一つずつ余計に付けて,
url='' + link + '' url=' + link + ' url=''' + link + ''' url='' + link + ''
と入力しました.
オフライン
einundzwanzighundertsechs さん
素晴らしいの一言です、私も早速使わせていただきたいと思います。
ただ、 https://forums.ubuntulinux.jp/viewtopic.php?pid=55619#p55619
で、ry さんが仰ってるとおり、greasemonky のユーザスクリプトを使えない人には、逆に敷居が高いものになってしまいますね・・・。
このあたりの、環境に依存する解決法は、のちのち非常に大きな問題となって顕現しそうな気が・・・。
水をかけるようなことを書いてしまい、本当に申し訳ないです。
あ、だからといって意味がないと言っているわけではないです。
それに関しての書き込みは、是非やめないでください。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
ryさん,hir0さん,vine_userさん,tncさん,petitbootangさん,そしてスレッドスターターの kiyop さん,
スクリプトに興味を持ってくださってありがとうございます.
今回のスクリプトの公開には,敬称の扱いについて葛藤がありました.他のトピックからの引用です.
funatogawa さんの投稿 #4:
機械的な「さん」表示なら、付いていても「付いていない」のと同じです。
自動挿入とはいえ「私の書いた文章に他の方を呼び捨てにしている部分が含まれる」のが嫌です.
スクリプトで引用方法を自らカスタマイズできる以上,敬称を自動挿入するコードを書くのは私の行動として自然なものです.
// 投稿を急ぐあまり敬称を付け忘れて送信してしまったことが何度か有りましたし…
結局,公開する「コード」もそのコードが「生成する結果」も,敬称を省略できない私の「作文」に準ずるものとして,
また,このトピックに限定すれば,引用に敬称を付ける方が大勢のようなので,敬称を自動挿入する版を投稿しました.
なお私が実際に使用している版では,ユーザ名が einundzwanzighundertsechs の場合には「さん」を省略する機能が追加して有ります.
hito さんの投稿 #5:
「引用部に敬称をつけるのがルール」という微妙かつ不思議な文化圏になるのは避けたい
公開したスクリプトには 「引用部に敬称をつけるルール」を助長する意図はありません.
しかし,敬称挿入部分を削ったスクリプトを公開したとしても,「さん」を付けるように改造するのは(少なくとも私の目からは)容易です.
そのような選択肢の存在そのものが敬称付加設定を強要することになるかもしれません.
ならば,手段の存在だけを仄めかし,手段の公開は控えるべきなのか? と自問しました.
tnc さんの投稿 #37:
誰にでも分かるように纏めてはどうでしょうか?
このままでは、分かる人には分かるけど、中にはよく分からないとおっしゃる方もいると思うので…。
せっかくだからここのWikiにでも書いてくだされば、皆さん幸せになると思うのですがいかがでしょうか?
以上の事情を鑑みて,Wiki には greasemonkey で当フォーラムのカスタマイズをする一般的な記述を主とし,
greasemonkey スクリプトの例として Wiki に直接記載するのはより当たり障りの無い他のものが良いかなと感じています.
そもそもWiki のアカウントは持ってませんし,手作業でやらずに済むことはプログラムを自作してでも任せてしまう根っからの怠け者でして,
kiyop さんの投稿 #43:
この方法をWikiページに記してもよろしいでしょうか?
の御言葉に甘えて,kiyop さんに御願いしたいところです.
もし「ubuntu-ja-linked-quote でなければ Wiki に書く意欲が出ない」と言うことならば,本トピックへのリンクを経緯として貼ってもらうとして,
// 我ながら,微妙な線引きです…
例えば#18で触れた「クイック投稿にプレビューボタンをつけるスクリプト」はどうでしょうか?
コードの分量が適当で,結果の確認が容易です.
// 「クイック投稿」とプレビューの成り行きによっては,無意味になるかも知れませんが…
// ==UserScript== // @name ubuntu-ja-quick-preview // @namespace http://localhost/ // @description Hack for Ubuntu Japanese Forum: Add Quick Preview Button // @include https://forums.ubuntulinux.jp/viewtopic.php?* // ==/UserScript== (function(){ var submit = document.getElementsByName('submit')[0]; if (submit) { var preview = document.createElement('input'); preview.type = 'submit'; preview.accessKey = 'p'; preview.value = 'プレビュー'; preview.tabIndex = submit.tabIndex + 1; preview.name = 'preview'; submit.parentNode.appendChild(preview); } })();
petitbootang さんの投稿 #42:
greasemonky のユーザスクリプトを使えない人には、逆に敷居が高いものになってしまいますね・・・。
このあたりの、環境に依存する解決法は、のちのち非常に大きな問題となって顕現しそうな気が・・・。
本当に仰るとおりです.どんな形であれ公開したツールには想像の遥か斜め上の「副作用」を齎す危険がつきものなのですよ…
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
水を差す様で申し訳ないのですが、今回のトピックの議論過程で私が最も意を得ていると思った物と少し形が違います。
簡単な修正で済みますが、wikiで修正するには似つかわしく無い様な気がしたので先に変更を唱える旨を書き込みます。
まず、この部分ですが
#1の投稿
上記の件に似たような話は
htps://forums.ubuntulinux.jp/viewtopic … 347#p55347
でも取り上げられているのですが、上記URLのトピックの主題は、
quote=の後に「さん」などの敬称を付けるかどうか
という内容であり、上記の件とは異なりますので、改めてこちらに新トピックを作りました。
「似たような話~上記の件とは異なりますので」と有りますが、登場人物、投稿の日時、内容から趣旨は違うが「quote=の後に「さん」などの敬称を付けるかどうか」の系統を引き継いでいると捉えています
#1の投稿
htps://forums.ubuntulinux.jp/viewtopic … 359#p55359の投稿(#22):
のように表示されるようなシステムにしてはいかがでしょうか。
#1の投稿
投稿者のハンドルネームはあまり重要ではない
#1の投稿
投稿者のハンドルネームが「引用部分」に表示されると、そのように引用した人が、その元の投稿者への個人攻撃をしているかのように思われることもあります。
#2の投稿
「引用文の投稿者のハンドルネーム」
を
投稿番号(例えば#1とか)
に、投稿しようとしている人自身が変えれば良いのですね。
#4の投稿
そして「#1」や「#2」と記している部分が参照元にリンクされている方が良いと。。。
#16の投稿
ハンドルネームは、内容よりも重要ではないので、「引用」をクリックしたときにハンドルネームよりもリンクが表示された方が良いと考えています。
この様な流れの中で上記している表示方法に賛同しましたが、今回のスクリプトでは
「リンクを張る手間が省ける」のであり、それ以外は何も現状とは変わらず、トピックが本題としている点からズレているように思います。
しかし、表示する名称部分を差し替えるだけで問題を解決する素晴らしいスクリプトであることには違い有りません。
そして問題は継続しています。
決してこのトピックで解決に導かれるまで議論する等では無く、引用部分の形式はどの様なのが望ましいのか、それが必要なのか等の話題に水が入る形になってしまっているのでは?
今回のスクリプトを作者のeinundzwanzighundertsechsさんの理解と協力を得、メンバの意見の交換の結果である程度方向性が見えるであろう形に変更して仕上げるのが良く、現状の問題点から見て「サンプル」「青写真」的なものをwikiにしても効果は半減してしまうのではないでしょうか?
そして冒頭でも書きましたがwikiで修正をするには「部分としては僅か」ですが「根本的な意味合い」を替え兼ねない変更になるのではと懸念しています。
また別の表示法方を試し書きされているメンバもいます。ユーザー名との併用ですね。
#11の GHO さんによる投稿:
現状なされていない事が、実装の手間や技術的難易度により否定されている事と同義だと解釈しております。
chinajunkさん による投稿:
>>7
私は部分的な引用はあまり好きではありません
「適切な範囲」かどうかは引用する人の勝手な判断です
すなわち引用する人以外(引用される人および第三者)は切り取られた範囲について恣意的なものと受け取らざるを得ません
恣意的でないと表明するには全文引用するしかないのですがそれならリンクで十分だと感じます
と言うことで
「greaseMonkeyを使い引用部分をリンクにする」
折角のスクリプト、これだけでは勿体ないのでは?
まー、そのままwikiにして、「変更を必要とする方は」って、またwikiでリンク貼っても同じだけど何だか不細工にも思えます、、、
オフライン
hito さんの投稿 #5:
「引用部に敬称をつけるのがルール」という微妙かつ不思議な文化圏になるのは避けたい
einundzwanzighundertsechsさん による投稿:
公開したスクリプトには 「引用部に敬称をつけるルール」を助長する意図はありません.
しかし,敬称挿入部分を削ったスクリプトを公開したとしても,「さん」を付けるように改造するのは(少なくとも私の目からは)容易です.
そのような選択肢の存在そのものが敬称付加設定を強要することになるかもしれません.
ならば,手段の存在だけを仄めかし,手段の公開は控えるべきなのか? と自問しました.
tnc さんの投稿 #37:
誰にでも分かるように纏めてはどうでしょうか?
このままでは、分かる人には分かるけど、中にはよく分からないとおっしゃる方もいると思うので…。
せっかくだからここのWikiにでも書いてくだされば、皆さん幸せになると思うのですがいかがでしょうか?
einundzwanzighundertsechsさん による投稿:
以上の事情を鑑みて,Wiki には greasemonkey で当フォーラムのカスタマイズをする一般的な記述を主とし,
greasemonkey スクリプトの例として Wiki に直接記載するのはより当たり障りの無い他のものが良いかなと感じています.
そもそもWiki のアカウントは持ってませんし,手作業でやらずに済むことはプログラムを自作してでも任せてしまう根っからの怠け者でして,
私もほぼ、お考えと同じです。
greasemonkey を使ったカスタマイズがこのようにして出来るというとがわかったのも今回の投稿があったからだと思っております。
ですから、greasemonkeyを使ってこのように利用できるということを纏め上げて公開される分には問題ないのではないかと思います。
例えば、ここのフォーラムでの例ではなくご自分のサイトを例に挙げてもいいのかなと思っております。
hitoさんもおっしゃっておられますが、基本的にフォーラムが用意した方法で引用ボタンを押すことにより自動的に引用できる訳だから
それを、そのまま使うことが現状では望ましいのではないかと思います。その理由についてはhitoさんが述べられたとおりだと思います。
実際、行動規範にて各項目において同意した上でのことですので「さん」がついてようがいまいが相手に敬意を表した上でのやり取りであると思っております。そうでないと、対等な情報交換って出来ないですよね。
オフライン
そうですね、tncさんの様に意見は色々有ると思います。
ただ仰っている様に「greasemonkeyを使ってこのように利用できる」で終わらせるには、余りにも凡庸な紹介かなって思いました。
もちろん、これも色々有る意見の一つです。
しかし、考え方によっては凡庸な紹介を元に各々が用途に合わせて手を加えれば良いことでも有りますね。
#でも、スクリプトの出自を鑑みるとツール紹介的な形は惜しい気がします。。。まぁ流れるままに何処かで落ち着くのでしょう。
オフライン
FluxBB のプラグインの形にすれば案として採用されやすくなるのかな~と思ったりしますが如何でしょう?
オフライン
本トピックや「クイック投稿」とプレビューを読んでいると,
[1] フォーラムに不慣れな人が使いやすくなるようにしよう
[2] 回答を書きやすくして欲しい
の二つのベクトルが混じっているような感じがしていました.
[1] が本来の趣旨のはずなのでしょうが,投稿するのは常連の方々ばかりなので,[2] の方向に話が向きがちなのは仕方が無いのかな...
と思いつつ,そこに挙がった「改善要求」を greasemonkey スクリプトで実装していました.
vine_user さんの言葉を借りるならば,greasemonkey が使える程度の中級者なら「回答者側でなんとかできる」ことを示すことで,
議論が本来の [1] に集中すれば,今回のスクリプトを投稿した甲斐は有るかなと思っています.
そういうわけで,コードも「自らカスタマイズする力がある人」を念頭に書きました.
オフライン