Mathjax: Ekstensi untuk siunitx

Dibuat pada 23 Apr 2013  ·  36Komentar  ·  Sumber: mathjax/MathJax

siunitx adalah paket yang cukup umum dalam makalah fisika. Bisakah ini ditambahkan?

(Itu diusulkan di sini , menjadikannya permintaan fitur formal)

Feature Request

Komentar yang paling membantu

https://rawgit.com/burnpanck/MathJax-siunitx/master/examples/siunitx.dtx.html

Jadi pada dasarnya sudah mati sekarang. Sedih. Adakah kesempatan untuk menghidupkannya kembali?

Semua 36 komentar

Hanya beberapa komentar umum. Saya tidak akrab dengan ekstensi ini, tetapi dari pandangan sekilas (pada manual 98 halaman ...), sepertinya tidak ada sesuatu yang sulit secara fundamental tentang itu, misalnya tidak ada lingkungan gambar (well, abaikan Teks-makro pula) .

Jadi kalau saya tidak ketinggalan, jawabannya adalah "ya, bisa", _tapi_ tidak ada di backlog kami (yah, sekarang sudah).

Daripada menunggu backlog kami selesai, kami akan sangat senang membantu orang lain menulis ekstensi. Setidaknya untuk set dasar perintah siunitx, ini seharusnya tidak terlalu sulit (kecuali untuk pengetahuan yang sangat baik tentang sinuitx).

Saya sudah mulai mencoba ekstensi seperti itu, tersedia di fork saya . Namun, kecuali karena ingin belajar, saya berada dalam posisi yang sangat buruk untuk melakukan ini, karena saya:

  • Saya hanya pembuat kode JS biasa
  • Tidak tahu internal MathJax sama sekali
  • Tidak tahu banyak tentang MathML
  • Saya pengguna biasa siunitx
  • Tidak tahu bagian dalam siunitx
  • Saya agak mahir dalam LaTeX, tetapi membaca internal paket tetap sulit

Oleh karena itu, saya mungkin membutuhkan masukan Anda di berbagai bidang.
Sejauh ini saya memiliki _very_ parsing dasar dari dua perintah \si dan \SI .
Sekarang, inilah dua pertanyaan pertama saya:

  • Bagaimana cara mengemas MathJax?
  • Apa elemen yang tepat di MathML/Jax untuk menggambarkan sebuah unit?

Pada 14 September 2014 15:23, Yves Delley [email protected] menulis:

  • Apa elemen yang tepat di MathML/Jax untuk menggambarkan sebuah unit?

mi kebanyakan, kami (Matematika WG) memiliki catatan tentang hal ini:

http://www.w3.org/TR/mathml-units/

Terima kasih untuk penunjuknya!

@burnpanck pertama: terima kasih telah terlibat -- luar biasa! Saya pikir deskripsi diri Anda sebenarnya terdengar sangat bagus -- perpaduan sempurna dari "tanpa bagasi" ;-), bisa dibilang begitu.

Untuk pertanyaan pertama Anda, saya sarankan untuk menggunakan repositori ekstensi pihak ketiga MathJax . Dengan begitu, Anda dapat mengemas dengan cara apa pun yang Anda suka (kami menggunakan alat dev kami tetapi kami tidak memiliki preferensi) dan Anda dapat mendorong ini bersama dalam keadaan saat ini sambil menyimpannya di MathJax CDN untuk audiens yang lebih luas. (Saya juga akan memposting ke posting grup pengguna yang relevan untuk merekrut penguji).

Mungkin juga ada pengguna di Physics.SE yang bersedia membantu -- mengulang tautan dari OP: http://meta.physics.stackexchange.com/questions/4220/siunitx-latex-package

Pada 15 September 2014 21:00, Peter Krautzberger [email protected]
menulis:

Mungkin juga ada pengguna di Physics.SE yang bersedia membantu -- untuk
ulangi tautan dari OP:
http://meta.physics.stackexchange.com/questions/4220/siunitx-latex-package


Balas email ini secara langsung atau lihat di GitHub
https://github.com/mathjax/MathJax/issues/447#issuecomment -55649254.

Joseph (penulis siunitx) baru saja membuat posting blog di mana MathJax mendapat
menyebutkan....

http://www.texdev.net/2014/09/18/reworking-and-exposing-siunitx-internals/

Yang mungkin sangat baik karena fakta bahwa saya memberi tahu dia melalui email tentang upaya saya, sambil bertanya tentang beberapa bagian dalam paket :-)

@pkra : Saya sekarang telah beralih ke repo ekstensi pihak ketiga. Namun, sekarang pengujian semakin sulit: Apakah ada cara mudah untuk memuat MathJax dari lokasi standar, tetapi memintanya untuk mencari ekstensi pihak ketiga di tempat lain?

@burnpanck

Yang mungkin sangat baik karena fakta bahwa saya memberi tahu dia melalui email tentang upaya saya, sambil bertanya tentang beberapa bagian dalam paket :-)

luar biasa!

Apakah ada cara mudah untuk memuat MathJax dari lokasi standar, tetapi minta untuk mencari ekstensi pihak ketiga di tempat lain?

Ya, ada -- lihat http://docs.mathjax.org/en/latest/options/ThirdParty.html

Pengembangan plugin siunitx saya terhenti.
Hanya ingin memposting tautan ke status saat ini:
https://github.com/burnpanck/MathJax-third-party-extensions/tree/add-siunitx-tex-extension
Entah bagaimana, saya tidak pernah memposting tautan itu setelah saya beralih ke MathJax-third-party-extensions .

Saya harus menambahkan bahwa ini menyediakan keluaran yang dapat dilihat dan dapat digunakan untuk hampir semua kasus uji yang ditemukan dalam dokumentasi siunitx . Apa yang saat ini masih tidak berfungsi dengan benar adalah

  • daftar kuantitas fisik (satuan tidak diulang dengan benar)
  • rendering sudut
  • input unit literal terkadang diurai secara tidak benar.
  • perintah \sisetup{...}
  • mungkin beberapa masalah kecil lainnya

Selain itu, saya tidak yakin apakah MathML yang dihasilkan benar secara semantik.

Jika Anda ingin menilai sendiri, pergi ke
http://rawgit.com/burnpanck/MathJax-third-party-extensions/add-siunitx-tex-extension/siunitx/sample-siunitx.html

Terima kasih, @burnpanck , atas pekerjaan Anda dalam hal ini!

Jika tidak rusak (hanya tidak lengkap), akan sangat baik dari sudut pandang kami untuk menggabungkan pekerjaan Anda ke dalam repo ekstensi pihak ketiga.

Apakah Anda memiliki saran bagi mereka yang ingin berkontribusi pada pekerjaan Anda?

Prosedur saya dulu adalah melihat contoh dan memperbaiki fitur satu per satu.
Masih ada beberapa kasus yang rusak (yaitu keluaran yang salah), setidaknya harus dibuat gagal dengan pesan kesalahan sebagai gantinya. Selain itu, penanganan kesalahan mungkin tidak ramah pengguna karena menghasilkan pengecualian JS.

Karena ini adalah ekstensi yang relatif kompleks, saya akan mengatakan langkah maju yang bagus adalah penggabungan prosedur pengujian otomatis, misalnya MathJax-test. Khususnya karena ada banyak pilihan dan kasus sudut yang dapat dengan mudah diabaikan.

Akhirnya, akan lebih baik untuk memeriksa MathML yang dihasilkan untuk ketepatan tipografi dan semantik.

Sebenarnya, hari ini saya sangat membutuhkan penundaan, jadi saya memperbaiki daftar, sudut, dan input unit literal. Dengan ini, tidak ada fitur yang diketahui rusak. Namun output yang dihasilkan masih belum terlihat optimal. Memang, saya akan sangat menghargai bantuan di sana. Saya tidak tahu bagaimana kelas MML MathJax bekerja, saya juga tidak tahu MathML dengan baik dan saya hanya mencoba coba-coba. Khususnya, spasi tidak benar dan berbeda antara HTML-CSS dan MathML keluaran di Firefox saya.

@burnpanck yay untuk penundaan :-) Mungkin kita harus mengobrol sebentar? Kode Anda terlihat sangat menarik dan kami ingin mendapatkan pemahaman yang lebih baik tentang apa yang terjadi dan bagaimana kami dapat membantu. Jika Anda tertarik, silakan ping saya di peter. [email protected].

+1, memiliki unit di mathjax adalah suatu keharusan!!!
@burnpanck banyak terima kasih atas pekerjaan Anda!
Memiliki unit yang tampak sempurna di semua nomor yang ada dengan selalu ruang yang sempurna antara angka dan unit tetapi tidak pernah ada jeda baris adalah salah satu alasan para insinyur menggunakan lateks!
Dan para insinyur juga ingin memiliki ini di situs web mereka :-)

@hpvd Saya percaya @burnpanck sedang mencari pembantu. Jika kami dapat membantu dengan pertanyaan tentang cara kerja input TeX MathJax atau yang lainnya, beri tahu kami.

Sekedar catatan:
Saya menggunakan ekstensi @burnpanck dengan instance dokuwiki pribadi saya dan plugin mathjax .
Saya dengan cepat menjelaskan pengaturan saya di faq di halaman itu (bawah) . Saya harap tidak apa-apa untuk semua orang (terutama @burnpanck) bahwa saya menaruh tautan langsung ke file?

Ini berfungsi dengan baik untuk saya sejauh ini (menggunakan \SI , \si , \num ). Yang saya lewatkan hanyalah \sisetup untuk bekerja mengubah output; Saya akan meretasnya jika saya punya waktu tetapi sampai sekarang saya dapat hidup dengan kekurangan ini.. Saya mungkin menemukan bug dan memperbaikinya, atau meretas fitur baru pada akhirnya. Jika itu terjadi, saya akan melaporkan kembali ke sini.

@RafiKueng
banyak terima kasih untuk deskripsi rinci!

@burnpanck ada keberatan jika saya membuat PR dari repositori Anda ke repo pihak ketiga? Kemudian dimasukkan ke CDN kami dan orang-orang lebih mudah menggunakan/mengujinya.

Tidak ada keberatan, silakan! Saya tahu, selama obrolan video kami beberapa waktu lalu, saya setuju untuk membahas beberapa masalah yang tersisa, sayangnya, saya akan memiliki sedikit waktu hingga akhir musim dingin. Tapi saya senang melihat bahwa itu berguna untuk beberapa orang bahkan dalam kondisi saat ini!

Tidak ada keberatan, silakan!

Besar! Saya melakukan PR awal. Saya bertanya-tanya apakah boleh menjatuhkan folder pengujian untuk repo pihak ketiga - pengujian mungkin harus dilakukan oleh Anda sendiri untuk saat ini? Jika tidak apa-apa maka saya akan membereskan PR sedikit.

mengatasi beberapa masalah yang tersisa, sayangnya, saya akan memiliki sedikit waktu sampai akhir musim dingin

Jangan khawatir sama sekali -- luar biasa apa yang telah Anda lakukan sejauh ini.

Apakah Anda memiliki daftar tugas di suatu tempat? Mungkin akan sangat membantu bagi kontributor potensial untuk memiliki daftar item pekerjaan mudah (atau sulit). Saya akan melihat apakah saya dapat menggali catatan saya dari obrolan kami juga.

Saya telah mendorong salinan ekstensi @burnpanck ke repo pihak ketiga dan CDN. Lihat http://codepen.io/pkra/pen/meLxzW untuk demo langsung.

Demo ini luar biasa - bahkan memperumit hal-hal seperti
$$\SI[per-mode=simbol]{123,44e-3}{\kilogram\meter\perampere\per\second}$$
bekerja dengan baik!!

Satu hal yang relatif penting yang tampaknya tidak berfungsi saat ini adalah pengalihan pembuat desimal ke "," (koma)
dari siunitx docu halaman 28 kode untuk ini seharusnya
\num[penanda-desimal-keluaran = {,}]{1.23}
demo menunjukkan masih "." (dot)

bagaimana seharusnya seseorang menangani temuan seperti itu? / kemana harus melapor?

bagaimana seharusnya seseorang menangani temuan seperti itu? / kemana harus melapor?

Nah, itu kode @burnpanck . Mungkin https://github.com/burnpanck/MathJax-third-party-extensions/ (di situlah saya baru saja mengarahkan PR).

Kami (tim MathJax) dengan senang hati membantu dan memberi saran, tetapi ekstensi pihak ketiga hanya itu, kode pihak ketiga, jadi kami tidak dapat mendedikasikan terlalu banyak sumber daya untuk mereka.

kemungkinan untuk membuka masalah tampaknya dinonaktifkan di tempat ini. Mungkin kita masih menunggu komentar @burnpanck ...

Kalian cepat! Masalah sekarang diaktifkan - jangan ragu untuk menambahkan apa pun yang Anda anggap penting. Bahkan jika saya tidak segera menemukan waktu untuk mengatasinya, ini tentu saja merupakan tempat yang baik untuk mengumpulkan masalah.

@pkra : Ada file siunitx/ImplementationDetails.md , yang berisi daftar pendek yang menunjukkan area di mana perbaikan dapat dilakukan. Saya menulis daftar itu tepat sebelum obrolan kami.

@burnpanck Terima kasih telah kembali dan mengaktifkan masalah. Baru buka yg pertama ;-)

@pkra hanya satu pertanyaan umum: apakah ada sesuatu seperti otomatis yang demo selalu menggunakan kode terbaru? => jadi apakah ini tempat yang tepat untuk pengujian?

@pkra hanya satu pertanyaan umum: apakah ada sesuatu seperti otomatis yang demo selalu menggunakan kode terbaru?

Itu harus diatur secara terpisah (dan sebenarnya agak rumit). Cara paling sederhana adalah dengan menyalin&menempelkan kode ekstensi langsung ke halaman codepen atau jsbin, misalnya http://codepen.io/pkra/pen/OyZqqx. Anda dapat membayar itu dan meretas untuk kesenangan Anda, perbarui seperti yang Anda inginkan.

Tidak pernah menggunakan codepen , tetapi tidak bisakah Anda menggunakan pengaturan MathJax normal dan melakukan MathJax.Ajax.config.path['Contrib'] = 'http://rawgit.com/burnpanck/MathJax-third-party-extensions/add-siunitx-tex-extension' ?
Catatan, ada rendering referensi (non-interaktif) dari dokumentasi siunitx menggunakan rawgit . Ada juga halaman pengujian interaktif . Tautan rawgit selalu mengarah ke kepala cabang add-siunitx-tex-extension .

tidak bisakah Anda menggunakan pengaturan MathJax normal?

Tentu. Saya sedang memikirkan demo langsung untuk meretas kode.

Saya telah memperbarui http://codepen.io/pkra/pen/meLxzW untuk menggunakan repo Anda melalui rawgit.

Apakah ini masih digarap?
.. baru saja mengalami ini (di cocalc.com), terpaksa menggunakan

%md
$n_{out} = 60\mathrm{~min^{-1}}$

Apakah ini masih digarap?

Ada ekstensi pihak ketiga untuk siunitx dan repositorinya ada di https://github.com/burnpanck/MathJax-siunitx.

https://rawgit.com/burnpanck/MathJax-siunitx/master/examples/siunitx.dtx.html

Jadi pada dasarnya sudah mati sekarang. Sedih. Adakah kesempatan untuk menghidupkannya kembali?

Meskipun ini sama sekali bukan pengganti siunitx, pengguna yang hanya ingin mengetik unit sederhana di MathJax dapat melihat perintah \pu mhchem. \pu{\pu{123 kJ*mol-1}} manual , gulir ke bawah sepenuhnya. (Perintah ini telah digunakan di StackExchange selama beberapa tahun. Jadi, saya harap Anda melihat ini sebagai petunjuk yang ramah dan bukan sebagai iklan yang tidak tahu malu.)

Apakah halaman ini membantu?
0 / 5 - 0 peringkat