Comments (20)
絵文字の機能は入りました。こちらで確認できます。
https://cpprefjp.github.io/working_style.html
あとは、既存ページに絵文字を入れていくのと、編集者向けページを直します。
from site.
私が使ってるMacVim環境でも、絵文字はカーソル位置がよくわからないことになったりしますね。
コンパイラバージョンを列挙していくと<span>
をつけてまわるのも大変なので、cpprefjp用の記法を用意して、markdown_to_htmlで変換してしまうのがいい気がします。
md記法 | 表示 | 変換後html |
---|---|---|
[mark noimpl] | ❌ | <span role="img" aria-label="未実装">❌</span> |
[mark impl] | ⭕ | <span role="img" aria-label="実装済">⭕</span> |
[mark ok] | ✅ | <span role="img" aria-label="検証済">✅</span> |
これでどうでしょう?
from site.
title が 未実装・実装済・検証済 なのでそのまま使い回すのは難しいかもしれないですね。title に合わせて [mark impl] / [mark noimpl] で良い気がしてきました。そうすると今度は [mark ok] で "検証済" とするのは #1274 (comment) by @onihusube における "ok" と意味がかちあうので、より具体的に [mark verified] とか [mark confirmed] とかの方が良いかもしれません。
from site.
手元ではsite_generatorとmarkdown_to_htmlの修正ができて動作確認もできたので、相対リンクのPRをマージしたらコミットしようと思います。
from site.
ライブラリリファレンスにある「### 処理系」の見出しは、実際に「動作確認できた処理系」を意味するのですが、そうであることがわかりにくいので、そうであるとわかるようにしたいです。
これはそのまま「動作確認できた処理系」がフィットしそうです。
それと、「対応していると期待できる処理系」みたいなのを追加して、(試せる環境がないなどで) 動作確認はできていないけど、リリースノートを見ると対応してるように見える、というのを書ける場所を用意したい気がしています。
見出しタイトルが悩ましいので別案があればほしいです。
「対応していると期待できる処理系」でもいいですが別案をあえて出すなら「対応したと宣言されている処理系」とかはどうでしょうか。
動作確認できた処理系の記載には、依然としてオーバーロードごと・バージョンごとをどうするかの問題が残ってはいますが
MDNの互換性テーブルみたいなのが作れればいいんでしょうけどなかなか大変ですよね・・・。こういうのを運用するとしたらMDNがやっているように言語をまたいで英語版cppreference.com の著者たちとかと連絡を取ってやるみたいなそういう規模感の運営がないとやっていけなさそうです。
from site.
「動作確認できた処理系」というのは何だか執筆者視点の感じが強く出て読者的に見ると変な感じがします。「確認済み処理系」の方がニュートラルな感じがします (理由を聞かれたらあまり説明できないですが)。
そういえば「動作する」ということを確認した処理系しか載っていないんですね (動作しないことが確認されたものは載っていない)。だとすると載っていないものは動かないのかあるいは単に未確認なだけか分からないんですね。見出しは「処理系の対応状況」として
- GCC: 12.0❌ 13.1✅
みたいな感じのほうがひと目に見て分かる気もします。
「対応したと宣言されている処理系」はもっと的を射た短い表現がありそうな気もしますが出てきません (カタログスペックというのも微妙に違うし)。
或いはこれも絵文字で示せたらいいのですが、一目で「対応したと宣言した」と分かる絵文字というのも難しそうです。Release "note" 的な連想で
- GCC: 12.0❌ 13.1📝 14.1✅
とか、或いは対応したと主張している時点で⭕として、更に動作検証は "追加で verified された" 的な捉え方で
- GCC: 12.0❌ 13.1⭕ 14.1✅
など。
確かに英語圏でこういう情報ってまとめていないんですかね。或いは各コンパイラ・標準ライブラリの開発者自身が todo リストとかチケットシステムみたいなものを管理していたらそれが一番確実な気もします。
from site.
いままでは、動作しないことが確認できた処理系も??にしていましたが、
- GCC: 12.0❌ 13.1✅
みたいに書けると、たしかにうれしいですね。こう書けるなら、「動作確認できた」と書かなくてもよいと思います。「処理系の対応状況」でいいですね。
from site.
対応したと主張している時点で⭕として、更に動作検証は "追加で verified された" 的な捉え方で
ありですね
from site.
雛形として、リファレンスの全ページにチェックマークの読み方を記載すれば、これでいい気がしますね
- GCC: 12.0❌ 13.1⭕ 14.1✅
from site.
処理系の対応状況
(❌ = 未実装、⭕ = 実装済・未検証、✅ = cpprefjpで検証済)
- GCC: 12.0❌ 13.1⭕ 14.1✅
こんな感じですか。
絵文字はこれまで cpprefjp の中で使われていましたか。絵文字はテキストブラウザや音声読み上げ対応でどうなるんでしょう。後ブラウザ間の絵文字の表示のぶれだとか。画像埋め込みにして代替テキスト (<img>
の alt
属性) を設定するという手も。
それから絵文字を直接 .md
の中に入れるかそれとも文字参照 (&#xHHHH;
or カスタムの &impl-verified;
とか) などの特別表記で記述するか。個人的には自分のエディタが絵文字に対応していないので直接 .md
に記述すると微妙かもです (が、変なソフトを使っているのが悪いと言われたら反論できない)。エディタが対応していたとしても絵文字を出すのが大変かと思いましたが、上記のように凡例を入れるならばそこからコピペすれば良いですね。
from site.
絵文字はREADMEのCIバッジ以外では使ってないですね。
編集者向けドキュメントとかに試しに書いてみて、一旦ブラウザの表示を確認してみたほうがよさそうですね。
文字参照でよいかと思います。
from site.
絵文字、コードブロック中のコメントですけど、使ったことがあります
https://cpprefjp.github.io/lang/cpp20/implicit_creation_of_objects_for_low-level_object_manipulation.html
from site.
上のページでは UB, ok などの文字列と併記されているので絵文字が豆腐になっても大丈夫ですね。
- GCC: 12.0❌未実装 13.1⭕実装済 14.1✅検証済
うーん。やはり絵文字が表示できるときは絵文字だけの方が見やすく感じます。cpprefjp/markdown_to_html
レベルで絵文字を画像 & alt
に変換するとか。。。
調べてみたら <img>
にしなくても <span role="img" aria-label="検証済">✅</span>
とすれば良い? 文字化けに対しては無力そうですがアクセシビリティー的にはこれで良い?
from site.
[mark noimpl]
は[mark ng]
とすることも考えましたが、実装前のバージョンというだけなのにネガティブに見えてしまうのはよくないかなと思って避けました。
from site.
良いと思います! 追加で title
属性もつけると良いかなと思います(ツールチップとして表示されるので)。
例: <span role="img" aria-label="未実装" title="未実装">❌</span>
from site.
[mark noimpl]
は[mark ng]
とすることも考えましたが、実装前のバージョンというだけなのにネガティブに見えてしまうのはよくないかなと思って避けました。
[mark na]
(N/A; Not available) というのもありかもです (でも、noimpl ←→ impl の対称性を考えたらやはり noimpl
の方がわかりやすいかも)。
from site.
[mark xxx]は文脈問わず使えていいと思うので (文脈を限定する方が実装コストがかかる)、ほかの文脈で使う可能性を考慮して、impl / noimplのような意味を限定したものじゃないものにしてもいい気はします。
ただ、あまり汎用にしてしまうとtitleを考えるのもむずかしくなるので、ほかに使いたい用途がでてきたら考えるのでもいいかもです。
from site.
それじゃverifiedにしましょうか。
from site.
ページのメタ情報が動かなくなってしまったので、一旦差し戻します。
from site.
全ページのコンパイラバージョンに、絵文字をつけました。
また、編集者向けドキュメントにもmark記法の意味を記載しました。
ひとまずこれで完了です。問題ありましたらreopenしてください。
from site.
Related Issues (20)
- [スポンサー] ugai様・ブロンズスポンサー
- 疑問: nullptr_t 引数のコンストラクターに noexcept がない? HOT 5
- 外部リンクチェックCIのissue発行が動かなくなってる HOT 11
- outer link check failed at f49fe9995fcff4e7ee8ed9e5af5ff25f37204aaf HOT 2
- Outer link check failed at d631e4f7ca8346fa287a9d719308ebc3e9cd89bc HOT 1
- [C++23] decay-copy言語機能
- Outer link check failed at 907d3e161f41297f274af157edee3167b243e3f9
- Outer link check failed at 907d3e161f41297f274af157edee3167b243e3f9 HOT 1
- CWG 2518の影響調査 HOT 12
- Outer link check failed at aff8e927502e4f11090b44e7330fe00ed7e061a2 HOT 3
- [c++20以降]MSVCの実装状況ページのリンク先の相談part2 HOT 8
- Copilot Businessのリクエスト?
- 雑多な議論をする場所の相談 HOT 9
- promiseのデストラクタが例外オブジェクトを格納することの記述がない HOT 13
- cpprefjp雑談部屋 HOT 40
- のちのC++バージョンの言語仕様も確認するよう促す HOT 10
- 言語機能のページタイトルを、具体的な変更が内容がわかるよう改善する HOT 11
- 数式ブロックのインデントを見直す HOT 17
- ページタイトルの末尾に提案文書の番号を記載する
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from site.