2024-11-04  Kjell Ahlstedt  <[email protected]>

 4.12.0

2024-10-28  Kjell Ahlstedt  <[email protected]>

 Makefile.am: Distribute new docs/tutorial/ files

 Distribute book.xsl, highlight.js/highlight.min.css and
 highlight.js/highlight.min.js.
 These files are used only when building with meson.

2024-10-27  sid  <[email protected]>

 docbook: Remove newline after <code> which displays empty space on top of code snippets

 There were 130 instances. Replaced with emacs macros.

2024-10-27  sid  <[email protected]>

 Fix the following hint messages while building pdf

 code: default template used in programlisting or screen
 function: default template used in programlisting or screen

2024-10-27  sid  <[email protected]>

 Remove '\n' which displays empty space on top of example code

 Some code snippets (not included example files) still start on a new
 line in docbook. This is addressed in a subsequent commit.

2024-10-25  sid  <[email protected]>

 docbook: Fix RELAX NG error (identified with jing)

 'xmllint' is pretty useless at reporting RELAX-NG errors, as it gives
 unrelated error hints and line numbers as below:

 docs/tutorial/index.docbook:10426: element para: Relax-NG validity error : Did not expect element para there
 docs/tutorial/index.docbook:10433: element section: Relax-NG validity error : Did not expect element section there
 docs/tutorial/index.docbook:10433: element section: Relax-NG validity error : Element chapter has extra content: section
 docs/tutorial/index.docbook:44: element info: Relax-NG validity error : Element book has extra content: info
 docs/tutorial/index.docbook fails to validate

 Refer https://github.com/NixOS/nixpkgs/issues/4966 for more details.

 With 'jing', the error was correctly identified as invalid use of
 &gtkmm; within <code> tag.

 $ jing https://docbook.org/xml/5.0/rng/docbook.rng docs/tutorial/index.docbook
 index.docbook:10504:40: error: element "application" not allowed here; expected the element end-tag, text or element "alt", "anchor", "annotation" ...

2024-10-25  sid  <[email protected]>

 docbook: Add <code> tag after <pre> so highlight.js works for code snippets

 E.g:

 <pre>
   <code>
     actual code
   </code>
 </pre>

 The <pre> tags will be generated when <programlisting> is converted to HTML.

 Actual changes:

 - Substitute <programlisting> with <programlisting><code>
 - Substitute </programlisting> with </code></programlisting>

2024-10-25  sid  <[email protected]>

 Add <code> tag after <pre> so highlight.js works for example code from files

 E.g:

 <pre>
   <code>
     actual code
   </code>
 </pre>

 The <pre> tags will be generated when <programlisting> is converted to HTML.

2024-10-25  sid  <[email protected]>

 Add highlight.js support for all generated HTML files

 This commit adds the following code in the '<head>' tag of all
 generated HTML files, as shown below:

 --- a/chapter-basics.html
 +++ b/chapter-basics.html
 @@ -1,5 +1,12 @@
  <html>
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 +  <link rel="stylesheet" href="highlight.min.css">
 +  <script src="highlight.min.js"></script>
 +  <script>
 +    hljs.configure({languages: ['cpp']});
 +    hljs.highlightAll();
 +  </script>
  <title>Chapter 3. Basics</title>
  <link rel="stylesheet" type="text/css" href="style.css">

2024-10-25  sid  <[email protected]>

 Improve code visual parameters so it's not too small and crowded.

2024-10-25  sid  <[email protected]>

 Add support for code syntax highlighting through highlight.js

 Adds highlight.js v11.9.0.

 I've evaluated the following 3 C++ highlighting CSS styles:

 - default.min.css (default C++ style provided by highlight.js)
 - intellij-light.min.css (intellij C++ style)
 - stackoverflow-light.min.css (stackoverflow C++ style)

 After a few tries in various pages, I settled upon intellij style, as
 it looked good and wasn't distracting (as with stackoverflow style
 sometimes with too much orange), and not too passive colors (as with
 default.min.css).

 So, the current 'highlight.min.css' is actually 'intellij-light.min.css'.

 Please feel free to modify in needed.

2024-08-23  Kjell Ahlstedt  <[email protected]>

 Add example and description of mouse events

 * docs/tutorial/C/index-in.docbook: Add Mouse Events section.
 * Rename docs/tutorial/C/figures/keyboardevents_simple.png -> events_simple.png
 * Rename docs/tutorial/C/figures/keyboardevents_propagation.png -> events_propagation.png
 * docs/tutorial/C/figures/events_mouse.png: New file.
 * docs/tutorial/Makefile.am:
 * docs/tutorial/meson.build:
 * examples/Makefile.am:
 * examples/book/meson.build: Rename and add files and directories.
 * Rename examples/book/keyboard_events -> events
 * Rename examples/book/events/simple -> keyboard_simple
 * Rename examples/book/events/propagation -> keyboard_propagation
 * examples/book/events/mouse/*: New example.

 Part of the new example program has been provided by Petr Talla.
 Fixes #23

2024-07-04  Kjell Ahlstedt  <[email protected]>

 Don't refer to developer.gnome.org

 Require python3 >= 3.7. That's what Meson requires.

2024-05-31  Kjell Ahlstedt  <[email protected]>

 Remove link to developer-old.gnome.org

 The glib-compile-resources command is not described there nowadays.
 Fixes #21

2024-05-26  Kjell Ahlstedt  <[email protected]>

 CI: Don't allow the validation to fail

2024-05-26  Kjell Ahlstedt  <[email protected]>

 Avoid <programlisting> elements within <para> elements

 In some situations the translation tools (itstool and friends)
 can't create translated index.docbook files if a <programlisting> element
 occurs in a <para> element. See !11

 A <programlisting> in a <para> can behave differently depending on which
 version of libxml2 is used. (itstool calls functions in libxml2.)
 Don't put any <programlisting> in a <para>.

2024-05-22  Kjell Ahlstedt  <[email protected]>

 CI: Allow the validation to fail

 Allow the validation to fail until we have been able to figure out what's
 wrong with the Chinese translation. It does not fail in Ubuntu 24.04.
 Probably depends on which version of itstool is used.

2024-05-22  Kjell Ahlstedt  <[email protected]>

 Examples: Use Gtk::SearchEntry2 if gtkmm-4.0 >= 4.13.2

 Affects examples book/buildapp/step6, step7, step8, step9 and book/searchbar.

2024-05-20  Dawid Chemloul  <[email protected]>

 Connected on_unbind_list_item to factory signal_unbind