短時間で学ぶサーバ設定術 Technology

Differences of MathML MFENCED Tag for Firefox and Safari

by e-Manabix


Posted on 2020年5月28日 (木) in Technology


MathML MFENCED タグの差異

新型コロナ(COVID-19)の影響で、遠隔教育が必要になり、MathML (Mathematical Markup Language)で行列や行列式の試験問題を作ったところ、学生から数式が正しく表示できないとの指摘を受けました。
調べたところ、以下の表のように、パソコン版のFirefoxでは、MFENCEDタグが対応していないことが分かりました。

<mfenced open="|" close="|">
PCsSmart Phones
PC FirefoxMac OS SafariAndroid FirefoxiOS Safari
NGOKOKOK

このため、パソコンのFirefoxで、行列や行列式を正しく表示する方法を、以下のようにまとめました。
なお、Firefoxの仕様は変わることが考えられますので、ご注意ください。

Equations
BrowsersMathMLHTML
Matrix
PC
Firefox
( 23 45 )
<math>
<mfenced>
<mrow>
<mo>(</mo>
<mtable>
<mtr><mtd><mi>2</mi></mtd>
	<mtd><mi>3</mi></mtd></mtr>
<mtr><mtd><mi>4</mi></mtd>
	<mtd><mi>5</mi></mtd></mtr>
</mtable>
<mo>)</mo>
</mrow>
</mfenced>
</math>
Android
Firefox
and
Safari
23 45
<math>
<mfenced>
<mrow>
<mtable>
<mtr><mtd><mi>2</mi></mtd>
	<mtd><mi>3</mi></mtd></mtr>
<mtr><mtd><mi>4</mi></mtd>
	<mtd><mi>5</mi></mtd></mtr>
</mtable>
</mrow>
</mfenced>
</math>
Firefox
and
Safari
( 23 45 )
<math>
<mrow>
<mo>(</mo>
<mtable>
<mtr><mtd><mi>2</mi></mtd>
	<mtd><mi>3</mi></mtd></mtr>
<mtr><mtd><mi>4</mi></mtd>
	<mtd><mi>5</mi></mtd></mtr>
</mtable>
<mo>)</mo>
</mrow>
</math>
Determinant

PC
Firefox
| ab cd |
<math>
<mfenced>
<mrow>
<mo>|</mo>
<mtable>
<mtr><mtd><mi>a</mi></mtd>
	<mi>b</mi></mtd><mtd></mtr>
<mtr><mtd><mi>c</mi></mtd>
	<mtd><mi>d</mi></mtd></mtr>
</mtable>
<mo>|</mo>
</mrow>
</mfenced>
</math>
Android
Firefox
and
Safari
ab cd
<math>
<mfenced open="|" close="|">
<mtable>
<mtr><mtd><mi>a</mi></mtd>
	<mtd><mi>b</mi></mtd></mtr>
<mtr><mtd><mi>c</mi></mtd>
	<mtd><mi>d</mi></mtd></mtr>
</mtable>
</mfenced>
</math>
Firefox
and
Safari
| ab cd |
<math>
<mrow>
<mo>|</mo>
<mtable>
<mtr><mtd><mi>a</mi></mtd>;
	<mi>b</mi></mtd><mtd></mtr>
<mtr><mtd><mi>c</mi></mtd>
	<mi>d</mi></mtd><mtd></mtr>
</mtable>
<mo>|</mo>
</mrow>
</math>

Links / リンク

  1. MathML Element Reference (Nov., 2019) in English
  2. MathML 要素リファレンス (Mar., 2019) in Japanese

  3. MathML Attribute Reference (Nov., 2019) in English
  4. MathML属性リファレンス (Mar., 2019) in Japanese

  5. <mfecnced> Element (Jan., 2020) in English
  6. <mfecnced>要素 (Nov., 2019) in Japanese


Java SE Development Kit 10 Downloads

by e-Manabix


Posted on 2018年4月30日 (月) in Technology


2018年4月に、Java SE Development Kit 10 (SDK 10) が公開され、以下のURLからダウンロード (download)できます。

https://www.oracle.com/technetwork/java/javase/downloads/jdk10-downloads-4416644.html

なお、Java SE SDK 9の配布は、SDK10の配布に伴って、中止となりました。
また、2018年9月からは、Java SE SDK 11の配布となり、無償版のOpen SDKと有償版のOracle SDKの配布となるそうです。

(注)Java SE SDK11は以下からのダウンロードになります。
https://www.oracle.com/technetwork/java/javase/downloads/index.html

CentOS 7において、yum を用いたJava SE SDK 9 の削除 (remove)とJava SE SDK 10 のインストール (install)は、以下の手順で実施できます。

# yum  list  installed | grep  jdk
jdk-9.0.4.x86_64
                  
# yum  remove  jdk

# yum  localinstall  jdk-10.0.1_linux-x64_bin.rpm

# java  -version
java version "10.0.1" 2018-04-17


Apache Roller Blog

by e-Manabix


Posted on 2018年4月17日 (火) in Technology


このブログのために、CentOS7に、Apache Roller 5.2 をインストールしました。

ドキュメント(roller-install-guide.odt)があるので、簡単にインストールできるだろうと考えていたのですが、ライブラリのバージョン間の不整合で、考えていた以上に時間がかかったので整理しました。

  1. ダウンロード / Downloads
    注意:JavaSE9にはJavaMail1.6.2に合わせる必要があります。

    ItemsVersionsRemarks
    OS CentOS7
    Java SE 9.0.4 Jan. 16, 2018
    JavaMail 1.6.2 Feb. 12, 2018 for Java SE 9
    JavaBeans Activation Framework(JAF) 1.1.1
    Database PostgreSQL 10.3
    JDBC Driver 42.2.1 Jan. 25, 2018
    Apache Tomcat 9.0
    Apache Roller 5.2 Nov. 6, 2017

  2. インストール / install
    $ sudo su
    # wget https://www.apache.org/dist/roller/roller-5.2/v5.2.0/roller-release-5.2.0-standard.tar.gz 
    # gunzip  roller-release-5.2.0-standard.tar.gz
    # tar xvf roller-release-5.2.0-standard.tar
    # mv webapps/roller.war /opt/tomcat/webapps/roller/roller.zip
    # unzip /opt/tomcat/webapps/roller/roller.zip
    # useradd scott
    # passwd scott
    # su postgres
    $ psql
    => CREATE USER scott login createdb;
    => CREATE DATABASE roller OWNER scott;
    => ¥q
    $ exit
    # su scott
    $ psql roller
    roller=> ¥i /opt/tomcat/webapps/roller/WEB-INF/classes/dbscripts/postgresql/createdb.sql
    roller=> SELECT * FROM rag_planet;
    roller=> ALTER USER scott WITH PASSWORD 'tiger';
    roller=> ¥q
    $ exit
    # exit
    

  3. ファイル構造 / File Structure
    /
    ├── opt/
    │     └── rollerdata/
    │           ├── mediafiles/
    │           ├── searchindex/
    │           └── uploads/
    ├── tomcat/
    │     ├── bin/
    │     ├──  conf/
    │     │    └── context.xml
    │     ├── lib/
    │     │   ├── activation.jar
    │     │   ├── javax.mail.jar
    │     │   └── postgresql-42.2.1.jar
    │     └── webapps/
    │            ├── ROOT/
    │            │       └── dbtest.jsp
    │            └── roller/
    │                   ├── META-INF/
    │                   │   └── context.xml-example
    │                   └── WEB-INF/
    │                         ├── classes/
    │                         │   ├── dbscripts/
    │                         │   │   └── sql/
    │                         │   │         └── createdb.sql
    │                         │   └── roller-custom.properties
    │                         └── lib/
    │                                └── ?
    └── var/
           └── log/
                  └── tomcat/
                         ├── catalina.2018-04-01.log
                         ├── catalina.out
                         ├── localhost_access_log.2018-04-01.txt
                         └── roller.log
    
    Rollerが正しく動作しない原因は、catalina.2018-04-01.log または catalina.out のログに書かれています。

  4. roller.war
    roller-release-5.2.0-standard.tar
    .
    ├── roller-release-5.2.0
        ├── LICENSE.txt
        ├── NOTICE.txt
        ├── README.md
        ├── docs
        │   ├── roller-install-guide.odt
        │   ├── roller-template-guide.odt
        │   └── roller-user-guide.odt
        └── webapp
               └── roller.war
    

  5. roller-custom.properties
    installation.type=manual
    database.configurationType=jndi
    database.jndi.name=java:comp/env/jdbc/rollerdb
    mediafiles.storage.dir=/opt/rollerdata/mediafiles
    mediafile.resource.url=/resources
    uploads.dir=/opt/rollerdata/uploads
    search.index.dir=/opt/rollerdata/searchindex
    log4j.appender.roller.File=/var/log/tomcat/roller.log
    mail.configurationType=jndi
    mail.jndi.name=mail/Session
    mail.hostname=mydomain.com
    mail.username=scott
    

  6. context.xml
         <resource name="jdbc/rollerdb" auth="container"
                  type="javax.sql.datasource"
                  driverclassname="org.postgresql.driver"
                  url="jdbc:postgresql://localhost:5432/roller"
                  username="scott"
                  password="tiger"
                  maxactive="20"
                  maxidle="3"
                  removeabandoned="true"
                  maxwait="3000" />
    
このブログの作成には、HTMLタグ変換ツールを用いています。