commit 02634f936ad3f38f214166ce03e88ef1847be6c9
Author: Koji Yokota <[email protected]>
Date:   Tue Oct 6 17:37:31 2026 +0900

    Bump up the format number to incorporate the shift toward uplatex
---
 lib/lyx2lyx/lyx_2_6.py | 53 ++++++++++++++++++++++++++++++++++++++++++++++++--
 src/version.h          |  4 ++--
 2 files changed, 53 insertions(+), 4 deletions(-)

diff --git a/lib/lyx2lyx/lyx_2_6.py b/lib/lyx2lyx/lyx_2_6.py
index eff5237f6f..e70135fdbc 100644
--- a/lib/lyx2lyx/lyx_2_6.py
+++ b/lib/lyx2lyx/lyx_2_6.py
@@ -37,7 +37,9 @@ import unicodedata
 from lyx2lyx_tools import (
     add_to_preamble,
     latex_length,
-    put_cmd_in_ert
+    put_cmd_in_ert,
+    insert_document_option,
+    remove_document_option
 )
 
 # Uncomment only what you need to import, please (parser_tools):
@@ -2060,6 +2062,51 @@ def revert_alltt(document):
         document.body[i] = "\\begin_layout LyX-Code"
 
 
+def convert_uplatex(document):
+    """Convert platex documents to uplatex ones"""
+    # standard japanese text styles
+    standard_classes = [
+        "jarticle", "jreport", "jbook", "tarticle", "treport", "tbook"
+    ]
+    newer_classes = [
+        # jsclasses
+        "jsarticle", "jsreport", "jsbook",
+
+        # BXjscls
+        "bxjsarticle", "bxjsreport", "bxjsbook", "bxjsslide",
+
+        # jlreq
+        "jlreq"
+    ]
+    if document.textclass in standard_classes:
+        document.textclass = "u" + document.textclass
+    elif document.textclass in newer_classes:
+        insert_document_option(document, "uplatex")
+
+def revert_uplatex(document):
+    """Revert uplatex documents to platex ones"""
+    print("test")
+    standard_classes = [
+        "ujarticle", "ujreport", "ujbook", "utarticle", "utreport", "utbook"
+    ]
+    newer_classes = [
+        # jsclasses
+        "jsarticle", "jsreport", "jsbook",
+
+        # BXjscls
+        "bxjsarticle", "bxjsreport", "bxjsbook", "bxjsslide",
+
+        # jlreq
+        "jlreq"
+    ]
+    if document.textclass in standard_classes:
+        tmp = document.textclass
+        print(tmp)
+        document.textclass = tmp.removeprefix("u")
+        # document.textclass = document.textclass.lstrip("u")
+    elif document.textclass in newer_classes:
+        remove_document_option(document, "uplatex")
+
 ##
 # Conversion hub
 #
@@ -2082,11 +2129,13 @@ convert = [
     [657, [convert_svmatters]],
     [658, [convert_use_alignedoverset, convert_alignedoverset_body]],
     [659, []],
-    [660, [convert_lyxcode]]
+    [660, [convert_lyxcode]],
+    [661, [convert_uplatex]]
 ]
 
 
 revert = [
+    [660, [revert_uplatex]],
     [659, [revert_alltt, revert_lyxcode]],
     [658, [revert_mathjax]],
     [657, [revert_use_alignedoverset]],
diff --git a/src/version.h b/src/version.h
index 51f66629ad..2e1a907994 100644
--- a/src/version.h
+++ b/src/version.h
@@ -32,8 +32,8 @@ extern char const * const lyx_version_info;
 
 // Do not remove the comment below, so we get merge conflict in
 // independent branches. Instead add your own.
-#define LYX_FORMAT_LYX 660 // spitz: ditch LyXCode
-#define LYX_FORMAT_TEX2LYX 660
+#define LYX_FORMAT_LYX 661 // koji: jarticle to ujarticle
+#define LYX_FORMAT_TEX2LYX 661
 
 #if LYX_FORMAT_TEX2LYX != LYX_FORMAT_LYX
 #ifndef _MSC_VER
-- 
lyx-cvs mailing list
[email protected]
https://lists.lyx.org/mailman/listinfo/lyx-cvs

Reply via email to