KM3 INFORMATIONS
Copyright KM2 CONSEIL 2023 -


Updated : 14 Jun 2025 @ 10:01:54
Version 031168 / @ 14:51 19/03/2025 GMT

1. HISTORY OF CHANGES AND UPDATES FOR THE PROCESSOR
  1.1. Changes and New Features
  1.2. Bug Corrections
2. HISTORY OF CHANGES FOR APPLICATIONS/MACROS
  2.1. Changes and New Features
  2.2. Bug Corrections
3. INSTALLING KM3
4. General information about KM3
  4.1. Documentation about KM3
5. OPEN ISSUES

1. HISTORY OF CHANGES AND UPDATES FOR THE PROCESSOR

1.1. Changes and New Features


Date Version Number Change Note
2025 June 14 3.11.69 in DEV mode : added auto build of "make.bat" for xmind files to py.files
2025 March 19 3.11.68 for python generation expanded the KM3 checker so it allows the new types declaration def foo (x: int) -> int better compatibilty with standards
2025 March 15 3.11.67 for graph mode : modified the zoom to grow simultnaeously between nodes and fonts
2025 March 09 3.11.66 for python generation allowed both multiline comments as ''' and """ misc
  • new icons for py and js
  • clarified use of the "T" and "N" in graphics mode :
    • "T" : this Text is automatically extracted from files. It cannot be changed by the user.
    • "N" is for user Notes
better compatibilty with standards
2025 march 05 3.11.65 in graph mode
  • added time budget for placement of nodes
better control of time management and user interface
2025 march 05 3.11.64 in graph mode
  • new algorithm for automatic placement of large graphs
  • Handling of local html files
    • possibility to expand local html files
    • display of specific html icon
placement of nodes in a graphe speed x 100 accessible with the "go_O" button
2025 feb 26 3.11.63 in graph mode
  • modified "merge nodes" to have a simpler topic text
  • introduced default style when creating nodes, vertices and sets, as the last used for each type
  • added key Conroel-M to toggle between move and fixed selection
2025 feb 17 3.11.62 added indexation of tcl and mjs files + research
2025 feb 13 3.11.61 added indexation of rtf and odd files
2025 feb 08 3.11.60 added IMPORTANT in the HELP menu displays all important files and parameters useful to edit dictionnaries of words, menus, etc
2025 feb 06 3.11.59 added the native C# mode improved some debug features improved the base PRETTY FILE can be called wit **module** lang=c# or lang=cs base set of macros Warning : in STANDARDS.xmind, cs macros must be placed before css (as this is a 'start' com^parison, not an 'exact' comparison
2025 jan 31 3.11.58 introduced parameters to control the wikipedia expansion
  • force analysis : True/False
  • level of analysis : all/specific links
modofied the interface to accs and modify these parmaters : in menu HELP / CONFIG
The question remains as what should be used effectively :
  • presently : links only in introduction and 'see also'
  • all nodes or partial ?
  • with portals, etc ... or without ?
2025 jan 27 3.11.57 introduction of self_sgh as a variable in macros to ease manipulation of nodes in some macros
2025 jan 24 3.11.56 in EXTRACT TABLE :
  • new possibility : EXTRACT TABLE ALL no need for detailing the column names
±► FOR EXTRACT TABLE ALL


2024 dec 27 3.11.53 made sure that all evals are treated as python code, not as JS or other
2024 dec 22 3.11.52 much metter error management for erros in *exec and in macros
  • helps to identify missing variables and functions
not yet perfect, but useful (Pareto's law 80/20 rule)
2024 dec 20 3.11.51 introduced the WHERE also in HTML
extended the treatment of '=' for other languages than python
extended the controls with !*controls show_macros name will print all macros containing 'name'
2024 nov 29 3.11.49 improved version of get wikipedia nodes
  • remove
  • better search in connex links
  • however, it brings many nodes !
a fundamental question :
  • all nodes ==> too much
  • selection ==> miss information
2024 nov 28 3.11.49 improved version of PRETTY FILE : possible to change the shape of the node also.

Possible shapes are :
  • spreadsheet
  • spreadsheet.column
  • logic.right
  • logic.left
  • org-chart.up
  • org-chart.down
  • tree.right
  • tree.left
  • map.unbalanced
  • timeline.horizontal
  • timeline.vertical
  • fishbone.leftHeaded
  • fishbone.rightHeaded
macros improved pattern macthing
  • at end of line
  • inserted loop detector for string macros
    (notation foo ::= foobar ) will generate an error
improved inclusion of image an image (in a macro, or other) can be sourced in an other file than the main file
made the dictionnary of macros avilable for *exec
  • KM2_PROGRAMMING_LANG_STATE : dict of all internal states, with key = language
  • KM3_PROGRAMMING_ALL_MACROS (lang) ==> list of allmacros for lang
different types of shapes
±► more shapes :
the images could be sourced only in the main file, while macros and other imports are defined in other files. (ex = inclusion of logo as a macro)
2024 nov 22 3.11.48 new version of automatic decoration : includes frames around user defined topics
2024 nov 22 3.11.47 improved version of wikipedia explorer
2024 nov 16 3.11.46 new version of ada macros new version of automatic decoration for program documents
  • more parameters
  • definition of styles in a separate file in KM3_PARAMS/S_MODELES
2024 oct 30 3.11.44 improved the header of generated files added the 'comments' section for xmind_files added the bubbles for xmind_files added the 'safe_log' function for easier traces of macros
  • more genericity for the KM3 processor
  • makes the KM3 processor easier to use
2024 oct 21 3.11.43 improved the PEP8 compatibility Also possibility to change the max width
2024 oct 21 3.11.42 new full txt mode with macros, bibliography, summary, etc
  • makes very clean .txt files
    • this is a title
    • Abstract : this is an abstract
    • SUMMARY/ this is a summary
    • paragraph numbering
  • compatible with Latex and html macros (as much as posisble)
2024 oct 21 3.11.42 automatic inclusion of standard macros for each language much more easy to generate documents
2024 oct 18 3.11.41 improved EVAL mode :
  • added possibility to modify the read-eval-print loop
  • possibility to define the eval and print functions
2024 oct 09 3.11.40 improved version of NOTEPAD --> XMIND PROG for js
  • recognizes multiple statements on one line
  • structures
    • if () { ...
    • for (...) {
2024 oct 1 3.11.39 for python: added PEP8 as lines must be < 80 chars long
2024 sept 24 3.11.38 For macros / split arguments : take into account the quote in html, which is not always a string separator. Examples :
  • french : c'est de l'albatre
  • english : it's ladies' night. I could'nt apply.
was very annoying for french could be also annoying for english should be better ???
2024 sept 12 3.11.38 compatibility GOSUB and tree/tree2
2024 sept 7 3.11.38 introduced "GOSUB X, i" for html/txt, as equivalent of "GOSUB X" fro compatibility purposes of the macros written for programming languages.
2024 July 1 3.11.37 change to ST_SAVE to make sure that the las tmodified xmind file will be checked every few seconds or less at most.
2024 may 31 3.11.36 introduction of the !{*} Var1, Var2, ... ; Varn syntax in macros
  • as a generalization of the !{*} syntax
  • will replace only mentionned variables
2024 may 22 3.11.35 added corrrect delete of notation with multiple words.
2024 may 10 3.11.34 introduction of GOSUB variable, tab_level as an alternative syntax for GOSUB
  • .GOSUB place
  • .GOSUB place, N used for programming, to define the indentation level
useful for Knuth like Literate Programming
2024 May 07 3.11.33 improved the *controls statement
  • new instruction show : will show the macros
improved the management of internal parameters
  • get_controls_dict () --> D and set_controls_dict (D)
2024 April 16 3.11.32 improved the latex generation for arrays and images (better compatibility html/latex)
2024 mars 22 3.11.31 introduction of *while as a control structure introduction of *elif control structure more similar to python improved error messages for program errors for if, elif, while, etc quite useful !
2024 mars 11 3.11.30 introduction of the native LATEX mode
  • first quite complete set of macros with documentation
  • with images
  • with tables
  • ...**module** lang = tex
2024 jan 25 3.11.29 introduction of new file types :
  • .odt and .rtf ==> identified as text documents
  • does the identification of words inside the files (by removing the html stuff)
2024 jan 11 3.11.28 in graph mode, improve the copy paste of nodes :
  • to improve queries --> web
2024 jan 09 3.11.27 extension of the search for EXTRACT TABLE as sometimes there is an additional empty node between EXTRACT TABLE and the pattern
2023 dec 20 3.11.26 The batch mode for KM2 is useful when building dedicated applications : the processor is activated "on demand". Define batch mode for the processor with several options
  • -f file_name : defines the source file (including the directory)
  • - force : force the processing / does not care about dates
  • -all : will rebuild all file types form the source
  • -py, -htm, -cpp -ada, -pl, etc : build the file with the selected extensions
Exemple :
  • KM2_PROCESS -f "C:/XXX/foo.xmind" -force -all
  • KM2_PROCESS -f "C:/XXX/foo.xmind" -py -htm will rebuild the foo.py and foo.htm files if foo;xmind was changed after these files.
  • KM2_PROCESS -f "C:/XXX/foo.xmind" -force -htm will force the rebuilt of the foo.htm file
2023 dec 18 3.11.25 define precisely the =T and =D schemes for the definition of arrays and dicts
2023 dec 15 3.11.24 checking potential errors in string macros :
  • simple infinite loop
    • a ::= a ==> ERROR
    • a ::= XaY error if there is no macro transforming some part of XaY into something else ==> WARNING
  • double infinite loop a ::= b and b ::= a ==> ERROR
2023 dec 9 3.11.23 maximum limit of km2 iterations set @500 000
  • (useful limit for preventing infinite looping)
  • also introduced an error message when reaching this
2023 dec 1 3.11.22 introduced several variables and enumerate in *for loops Also : better error management in *for loops
2023 nov 28 3.11.21 Added capacity to deal with several icons as macros NB : the icons are always ordered did not handle properly one and multiple macros starting with the same word
2023 nov 18 3.11.20 Refactoring for better name management in the KM2 processor
2023 nov 08 3.11.19 new features in EXTRACT TABLE :
  • ignore the first column by using the '-' before name of column
Added !*warn as a possibility
  • input
    result
    Also adds an error line in the generated code
2023 nov 02 3.11.18 new features in MACROS :
  • check instanciation of variables
  • uniform structure with EXTRACT TABLE
  • improved error messages
Introduction of CASE ALL ... THEN introduction of CASE ... THEN
2023 october 25 3.11.17 autocorrect for *standard and *import in windows (if file not found nominally on drive, looks for other drives) introduced delayed programming technique for macros ==> standard (LATER xxx MACROS)
2023 October 19 3.11.16 adding notebooks in eval mode
  • features : save save as load
  • access through : DEV > NOTEBOOKS >
wrong web link could not run expressions in brackets [ ...]
2023 October 9 3.11.15 introduction of css files and macros introduction of parse prog (py, cpp, js, css) to xmind
2023 September 11 3.11.13 improvements : handles match case in python
2023 September 01 3.11.12 improvements : for string matching in macros :
  • acceleration of the algorithm
2023 August 30 3.11.11 feature : for string matching in macros :
  • automatic ordering when adding new text rewrite rules
automatic ordering of string rewriting rules so as not to generate loops
2023 May 1st 3.11.01 First version of KM3

1.2. Bug Corrections

Date Version Number Corrected Note
2025 June 14 3.11.69 display of summary of pptx files, in the info column
Correct
Incorrect :
2025 feb 17 3.11.62 corrected lists of words for DE
2025 feb 13 3.11.61 corrected lists of words for DE
2025 jan 24 3.11.56 corrected extract images and files from xmind file improper extract mode
2025 jan 23 3.11.55 properly delete of macro with icons
2025 Jan 08 3.11.54 bug in unload extension :
  • destroyed unwanted menus
  • now base menus are protected
2024 dec 10 3.11.50 bug in the *if, *while, etc the macros were activated in the current langage, not in python
2024 nov 28 3.11.49 bug correction in
  • CASE ALL did not generate properly the last item (lack of ';')
2024 nov 22 3.11.48 bug correction in merge nodes (graphics)
2024 nov 22 3.11.47 bug correction in merge nodes (graphics)
2024 nov 16 3.11.46 could not handle an empty list small bugs corrections in :
  • CASE ALL : the 'else' case clause was inverted
2024 nov 13 3.11.45 small bug correction in :
  • KM2 DRAW GRAPH could not recognize properly topics with file or url names
2024 sept 24 3.11.38 corrected single/double macro error
2024 may 22 3.11.35 in !*indent did not indent properly when no value is mentionned
2024 April 27 bug correction wikipedia/expand did not handle complex names after search
2024 April 16 3.11.32 bug correction in macro for start of line macros
2024 mars 22 3.11.31 *try : difficult to implement ???
2023 nov 28 3.11.21 bug correction in macro generation
2023 nov 18 3.11.20 small bug correction in EXTRACT TABLE small bug correction in XMINDCORRECT_WORD
2023 october 25 3.11.17 corrected bug for multi macros in html
2023 October 19 3.11.16 correct link to the web help files corrected bug in eval mode
2023 August 28 3.11.10 bug correction in *complete* variable not initialized
2023 August 24 3.11.10 bug correction correction dans processeur KM2 génération des fonctions
2023 July 26 3.11.08 bug correction in **complete** did not display properly name of directories

2. HISTORY OF CHANGES FOR APPLICATIONS/MACROS

We describe here all the changes affecting the basic macros for languages : python, cpp, htm, js, etc.

2.1. Changes and New Features

Date Change Macro Set
2024 dec 26 complements to macros to get more easily the documentation 3 macros
  • SHOW DOC ABOUT name : shows the documentation about name name is a title
  • DOC ABOUT name : created documentation about name
  • MORE DOC ABOUT name : allows to add doc later than just in DOC ABOUT
2024 nov 16 new version of ada macros new version of Xmind model files
  • python
  • html
  • javascript
  • txt
2024 oct 27 find files with time in the KM2 interface
2024 oct 26 corrected PEP8 full standard for python And also :
  • KM2 configured with 120 chars/ligne instead of 80
  • use !*controls PEP8 = 80
2024 April 15 new "STRINGIFY LINES" macro useful for producing 1 line from multiple lines multilingues
2024 jan 9 finished test of some macros :
  • LOCAL LINES
  • LOCAL ACC
  • LATER ADD
  • LATER FINISH
multilingues

2.2. Bug Corrections

Date Macro Set Corrected Note

3. INSTALLING KM3

SEE here

4. General information about KM3

4.1. Documentation about KM3

what for Content Where do I get it ?
Reference Documentation Everything you wanted to know about using KM3 General documentation
Concepts about KM2 This article describe the concept of KM3 and non linear writing
Requires understanding of conceptualizations.
COMPUTER_AND_WRITING
All articles about KM3 examples of things you can do with KM3
Texts are in english and french.
here

5. OPEN ISSUES

Topic Note Version Number Change
Easy migration from KM2 to KM3 does work ??? 3.11.08 solved
Easy update from KM3.x to KM3.y does not work fully properly ? 3.11.08 solved
Handling special characters in file and dir names 3.11.08
Handling special characters inside (MSFT) files 3.11.08
batch mode 3.11.26 solved