[Libreoffice-commits] core.git: accessibility/README.md android/README.md animations/README.md apple_remote/README.md avmedia/README.md basctl/README.md basegfx/README.md basic/README.md bean/README.md binaryurp/README.md bin/README.md bridges/README.md canvas/README.md chart2/README.md cli_ure/README.md codemaker/README.md comphelper/README.md compilerplugins/README.md config_host/README.md configmgr/README.md connectivity/README.md cppcanvas/README.md cppuhelper/README.md cppu/README.md cpputools/README.md cui/README.md dbaccess/README.md desktop/README.md distro-configs/README.md drawinglayer/README.md editeng/README.md embeddedobj/README.md embedserv/README.md emfio/README.md eventattacher/README.md extensions/README.md external/README.md extras/README.md filter/README.md forms/README.md formula/README.md fpicker/README.md framework/README.md hwpfilter/README.md i18nlangtag/README.md i18npool/README.md i18nutil/README.md icon-themes/README.md idlc/README.md idl/README.md instsetoo_native/READ ME.md io/README.md javaunohelper/README.md jurt/README.md jvmaccess/README.md jvmfwk/README.md l10ntools/README.md librelogo/README.md libreofficekit/README.md lingucomponent/README.md linguistic/README.md lotuswordpro/README.md m4/README.md nlpsolver/README.md o3tl/README.md odk/README.md offapi/README.md officecfg/README.md onlineupdate/README.md oovbaapi/README.md oox/README.md opencl/README.md osx/README.md package/README.md pch/README.md postprocess/README.md pyuno/README.md qadevOOo/README.md readlicense_oo/README.md README.md registry/README.md remotebridges/README.md reportbuilder/README.md reportdesign/README.md ridljar/README.md salhelper/README.md sal/README.md sax/README.md scaddins/README.md sccomp/README.md schema/README.md scp2/README.md sc/README.md scripting/README.md sdext/README.md sd/README.md sfx2/README.md shell/README.md slideshow/README.md smoketest/README.md solenv/README.md soltools/README.md sot/README.md starmath/README.md stoc/README.md store/README.md s vgio/README.md svl/README.md svtools/README.md svx/README.md swext/README.md sw/README.md sysui/README.md test/README.md testtools/README.md toolkit/README.md tools/README.md ucbhelper/README.md ucb/README.md udkapi/README.md uitest/README.md UnoControls/README.md unodevtools/README.md unoidl/README.md unoil/README.md unotools/README.md unoxml/README.md ure/README.md uui/README.md vbahelper/README.md vcl/README.md winaccessibility/README.md wizards/README.md writerfilter/README.md writerperfect/README.md xmerge/README.md xmlhelp/README.md xmloff/README.md xmlreader/README.md xmlscript/README.md xmlsecurity/README.md

Hossein (via logerrit) logerrit at kemper.freedesktop.org
Wed Apr 7 15:48:06 UTC 2021


 README.md                  |   44 ++--
 UnoControls/README.md      |    2 
 accessibility/README.md    |    4 
 android/README.md          |  224 ++++++++++-------------
 animations/README.md       |    4 
 apple_remote/README.md     |   13 -
 avmedia/README.md          |   16 -
 basctl/README.md           |    4 
 basegfx/README.md          |    4 
 basic/README.md            |    6 
 bean/README.md             |    2 
 bin/README.md              |    4 
 binaryurp/README.md        |    5 
 bridges/README.md          |    6 
 canvas/README.md           |   41 ++--
 chart2/README.md           |   10 -
 cli_ure/README.md          |    7 
 codemaker/README.md        |   20 +-
 comphelper/README.md       |    6 
 compilerplugins/README.md  |   53 ++---
 config_host/README.md      |   33 +--
 configmgr/README.md        |  173 +++++++++---------
 connectivity/README.md     |   50 ++---
 cppcanvas/README.md        |    8 
 cppu/README.md             |   10 -
 cppuhelper/README.md       |   10 -
 cpputools/README.md        |    4 
 cui/README.md              |    6 
 dbaccess/README.md         |    6 
 desktop/README.md          |   29 +--
 distro-configs/README.md   |   20 +-
 drawinglayer/README.md     |   28 +-
 editeng/README.md          |   18 +
 embeddedobj/README.md      |    4 
 embedserv/README.md        |    2 
 emfio/README.md            |    6 
 eventattacher/README.md    |    9 
 extensions/README.md       |   46 ++--
 external/README.md         |    2 
 extras/README.md           |  108 +++++------
 filter/README.md           |   24 +-
 forms/README.md            |    4 
 formula/README.md          |    8 
 fpicker/README.md          |    2 
 framework/README.md        |    7 
 hwpfilter/README.md        |    4 
 i18nlangtag/README.md      |  224 +++++++++++------------
 i18npool/README.md         |   15 +
 i18nutil/README.md         |    6 
 icon-themes/README.md      |   52 ++---
 idl/README.md              |    8 
 idlc/README.md             |    9 
 instsetoo_native/README.md |   10 -
 io/README.md               |    5 
 javaunohelper/README.md    |    3 
 jurt/README.md             |    3 
 jvmaccess/README.md        |    5 
 jvmfwk/README.md           |   17 +
 l10ntools/README.md        |    4 
 librelogo/README.md        |    2 
 libreofficekit/README.md   |   37 +--
 lingucomponent/README.md   |    4 
 linguistic/README.md       |    4 
 lotuswordpro/README.md     |   34 +--
 m4/README.md               |    4 
 nlpsolver/README.md        |    9 
 o3tl/README.md             |   46 ++--
 odk/README.md              |   34 +--
 offapi/README.md           |   24 +-
 officecfg/README.md        |    9 
 onlineupdate/README.md     |   35 ++-
 oovbaapi/README.md         |   11 -
 oox/README.md              |   48 ++---
 opencl/README.md           |    2 
 osx/README.md              |    6 
 package/README.md          |    4 
 pch/README.md              |    4 
 postprocess/README.md      |    6 
 pyuno/README.md            |   25 +-
 qadevOOo/README.md         |    4 
 readlicense_oo/README.md   |   29 +--
 registry/README.md         |    4 
 remotebridges/README.md    |    2 
 reportbuilder/README.md    |    6 
 reportdesign/README.md     |    2 
 ridljar/README.md          |    4 
 sal/README.md              |    6 
 salhelper/README.md        |    4 
 sax/README.md              |   10 -
 sc/README.md               |   22 +-
 scaddins/README.md         |    9 
 sccomp/README.md           |    2 
 schema/README.md           |   25 +-
 scp2/README.md             |    4 
 scripting/README.md        |   52 ++---
 sd/README.md               |   48 ++---
 sdext/README.md            |   44 ++--
 sfx2/README.md             |   24 +-
 shell/README.md            |    3 
 slideshow/README.md        |   29 +--
 smoketest/README.md        |   21 +-
 solenv/README.md           |   50 ++---
 soltools/README.md         |    3 
 sot/README.md              |    4 
 starmath/README.md         |    5 
 stoc/README.md             |   39 +---
 store/README.md            |    4 
 svgio/README.md            |    4 
 svl/README.md              |   41 ++--
 svtools/README.md          |    4 
 svx/README.md              |  156 ++++++++--------
 sw/README.md               |   28 +-
 swext/README.md            |    4 
 sysui/README.md            |    4 
 test/README.md             |    4 
 testtools/README.md        |   33 +--
 toolkit/README.md          |   14 -
 tools/README.md            |    6 
 ucb/README.md              |    4 
 ucbhelper/README.md        |    2 
 udkapi/README.md           |   13 -
 uitest/README.md           |    2 
 unodevtools/README.md      |    4 
 unoidl/README.md           |  432 ++++++++++++++++++++++-----------------------
 unoil/README.md            |    4 
 unotools/README.md         |    2 
 unoxml/README.md           |    4 
 ure/README.md              |    6 
 uui/README.md              |    4 
 vbahelper/README.md        |    4 
 vcl/README.md              |   89 ++++-----
 winaccessibility/README.md |   43 ++--
 wizards/README.md          |    6 
 writerfilter/README.md     |   32 +--
 writerperfect/README.md    |    5 
 xmerge/README.md           |    7 
 xmlhelp/README.md          |    4 
 xmloff/README.md           |   13 -
 xmlreader/README.md        |    6 
 xmlscript/README.md        |    4 
 xmlsecurity/README.md      |    4 
 141 files changed, 1749 insertions(+), 1507 deletions(-)

New commits:
commit ea5641baeef73af60d025d185901a303844e2d85
Author:     Hossein <hossein.ir at gmail.com>
AuthorDate: Mon Mar 29 21:55:26 2021 +0430
Commit:     Adolfo Jayme Barrientos <fitojb at ubuntu.com>
CommitDate: Wed Apr 7 17:47:16 2021 +0200

    Updated README.md files to represent current code / use Markdown format
    
    Previously, all of the README files have been renamed to README.md
    and now, the contents of these files were changed to use Markdown
    format. Other than format inconsistency, some README.md files lacked
    information about modules, or were out of date. By using LibreOffice
    / OpenOffice wiki and other documentation websites, these files were
    updated. Now every README.md file has a title, and some description.
    The top-level README.md file is changed to add links to the modules.
    The result of processing the Markdown format README.md files can be
    seen at: https://docs.libreoffice.org/
    
    Change-Id: Ic3b0c3c064a2498d6a435253b041df010cd7797a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113424
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <michael.stahl at allotropia.de>
    Reviewed-by: Adolfo Jayme Barrientos <fitojb at ubuntu.com>

diff --git a/README.md b/README.md
index 7da780aca76a..2e5561998892 100644
--- a/README.md
+++ b/README.md
@@ -29,7 +29,7 @@ to compile and build your code, it avoids any arbitrary limitations of
 our scripting APIs, and in general is far more simple and intuitive -
 if you are a reasonably able C++ programmer.
 
-## The build chain and runtime baselines
+## The Build Chain and Runtime Baselines
 
 These are the current minimal operating system and compiler versions to
 run and compile LibreOffice, also used by the TDF builds:
@@ -62,13 +62,13 @@ the LibreOffice Development Environment
 For more information see the build instructions for your platform in the
 [TDF wiki](https://wiki.documentfoundation.org/Development).
 
-## The important bits of code
+## The Important Bits of Code
 
-Each module should have a `README` file inside it which has some
+Each module should have a `README.md` file inside it which has some
 degree of documentation for that module; patches are most welcome to
 improve those. We have those turned into a web page here:
 
-https://docs.libreoffice.org/
+<https://docs.libreoffice.org/>
 
 However, there are two hundred modules, many of them of only
 peripheral interest for a specialist audience. So - where is the
@@ -77,32 +77,32 @@ the most important ones:
 
 Module    | Description
 ----------|-------------------------------------------------
-sal/      | this provides a simple System Abstraction Layer
-tools/    | this provides basic internal types: 'Rectangle', 'Color' etc.
-vcl/      | this is the widget toolkit library and one rendering abstraction
-framework | UNO framework, responsible for building toolbars, menus, status bars, and the chrome around the document using widgets from VCL, and XML descriptions from */uiconfig/* files
-sfx2/     | legacy core framework used by Writer/Calc/Draw: document model / load/save / signals for actions etc.
-svx/      | drawing model related helper code, including much of Draw/Impress
+[sal/](sal)             | this provides a simple System Abstraction Layer
+[tools/](tools)         | this provides basic internal types: `Rectangle`, `Color` etc.
+[vcl/](vcl)             | this is the widget toolkit library and one rendering abstraction
+[framework/](framework) | UNO framework, responsible for building toolbars, menus, status bars, and the chrome around the document using widgets from VCL, and XML descriptions from `/uiconfig/` files
+[sfx2/](sfx2)           | legacy core framework used by Writer/Calc/Draw: document model / load/save / signals for actions etc.
+[svx/](svx)             | drawing model related helper code, including much of Draw/Impress
 
 Then applications
 
 Module    | Description
 ----------|-------------------------------------------------
-desktop/  | this is where the 'main' for the application lives, init / bootstrap. the name dates back to an ancient StarOffice that also drew a desktop
-sw/       | Writer
-sc/       | Calc
-sd/       | Draw / Impress
+[desktop/](desktop)  | this is where the `main()` for the application lives, init / bootstrap. the name dates back to an ancient StarOffice that also drew a desktop
+[sw/](sw/)           | Writer
+[sc/](sc/)           | Calc
+[sd/](sd/)           | Draw / Impress
 
 There are several other libraries that are helpful from a graphical perspective:
 
 Module    | Description
 ----------|-------------------------------------------------
-basegfx/  | algorithms and data-types for graphics as used in the canvas
-canvas/   | new (UNO) canvas rendering model with various backends
-cppcanvas/ | C++ helper classes for using the UNO canvas
-drawinglayer/ | View code to render drawable objects and break them down into primitives we can render more easily.
+[basegfx/](basegfx)  | algorithms and data-types for graphics as used in the canvas
+[canvas/](canvas)   | new (UNO) canvas rendering model with various backends
+[cppcanvas/](cppcanvas) | C++ helper classes for using the UNO canvas
+[drawinglayer/](drawinglayer) | View code to render drawable objects and break them down into primitives we can render more easily.
 
-## Rules for #include directives (C/C++)
+## Rules for #include Directives (C/C++)
 
 Use the `"..."` form if and only if the included file is found next to the
 including file. Otherwise, use the `<...>` form. (For further details, see the
@@ -112,12 +112,12 @@ mail [Re: C[++]: Normalizing include syntax ("" vs
 The UNO API include files should consistently use double quotes, for the
 benefit of external users of this API.
 
-loplugin:includeform (compilerplugins/clang/includeform.cxx) enforces these rules.
+`loplugin:includeform (compilerplugins/clang/includeform.cxx)` enforces these rules.
 
 
-## Finding out more
+## Finding Out More
 
-Beyond this, you can read the `README` files, send us patches, ask
+Beyond this, you can read the `README.md` files, send us patches, ask
 on the mailing list libreoffice at lists.freedesktop.org (no subscription
 required) or poke people on IRC `#libreoffice-dev` on irc.freenode.net -
 we're a friendly and generally helpful mob. We know the code can be
diff --git a/UnoControls/README.md b/UnoControls/README.md
index 72348dc3715f..2a5d79a2e626 100644
--- a/UnoControls/README.md
+++ b/UnoControls/README.md
@@ -1 +1,3 @@
+# UNO Controls
+
 Separate process and thread for progress bars, etc.
diff --git a/accessibility/README.md b/accessibility/README.md
index 9309e2725e01..6e11da1acee2 100644
--- a/accessibility/README.md
+++ b/accessibility/README.md
@@ -1 +1,3 @@
-Cares for accessibility.
+# Accessibility Support for LibreOffice
+
+Provides accessible components for LibreOffice
diff --git a/android/README.md b/android/README.md
index cfce3ddaa942..919122df38d1 100644
--- a/android/README.md
+++ b/android/README.md
@@ -1,128 +1,118 @@
-LibreOffice Android
-*******************
+# LibreOffice for Android
 
-Bootstrap
-*********
+## Bootstrap
 
 Contains common code for all projects on Android to bootstrap LibreOffice. In
-addition it is a home to LibreOfficeKit (LOK - see libreofficekit/README) JNI
+addition it is a home to `LibreOfficeKit` (LOK - see `libreofficekit/README.md`) JNI
 classes.
 
-stuff in source directory
-*************************
+## Stuff in Source Directory
 
 LibreOffice Android application - the code is based on Fennec (Firefox for Android).
 It uses OpenGL ES 2 for rendering of the document tiles which are gathered from
 LibreOffice using LOK. The application contains the LibreOffice core in one shared
-library: liblo-native-code.so, which is bundled together with the application.
+library: `liblo-native-code.so`, which is bundled together with the application.
 
-Architecture and Threading
-**************************
+## Architecture and Threading
 
 The application implements editing support using 4 threads:
+
 1. The Android UI thread, we can't perform anything here that would take a considerable
    amount of time.
 2. An OpenGL thread which contains the OpenGL context and is responsible for drawing
    all layers (including tiles) to the screen.
-3. A thread (LOKitThread), that performs LibreOfficeKit calls, which may take more time
+3. A thread (`LOKitThread`), that performs `LibreOfficeKit` calls, which may take more time
    to complete. In addition it also receives events from the soffice thread (see below)
    when the callback emits an event. Events are stored in a blocking queue (thread
    processes events in FCFS order, goes to sleep when no more event is available and
    awakens when there are events in the queue again).
 4. A native thread created by LibreOfficeKit (we call it the soffice thread), where
-   LibreOffice itself runs. It receives calls from LOKitThread, and may emit callback
+   LibreOffice itself runs. It receives calls from `LOKitThread`, and may emit callback
    events as necessary.
 
-LOKitThread
-***********
+## LOKitThread
 
-LOKitThread (org.libreoffice.LOKitThread) communicates with LO via JNI (this can
-be done only for one thread) and processes events (defined in org.libreoffice.LOEvent)
+`LOKitThread` (`org.libreoffice.LOKitThread`) communicates with LO via JNI (this can
+be done only for one thread) and processes events (defined in `org.libreoffice.LOEvent`)
 triggered from UI.
 
-Application Overview
-********************
+## Application Overview
 
-LibreOfficeMainActivity (org.libreoffice.LibreOfficeMainActivity) is the entry point
-of the application - everything starts up and tears down from here (onCreate, onResume,
-onPause, onStart, onStop, onDestroy).
+LibreOfficeMainActivity (`org.libreoffice.LibreOfficeMainActivity`) is the entry point
+of the application - everything starts up and tears down from here (`onCreate`, `onResume`,
+`onPause`, `onStart`, `onStop`, `onDestroy`).
 
-Document view
--------------
+### Document View
 
 From here on one of the most interesting pieces are the classes around document view,
 which includes listening to touch events, recalculating the viewport, tiled handling
 and rendering the layers to the document.
 
-Viewport - the viewport is the currently visible part of the document. It is defined
+`Viewport` - the viewport is the currently visible part of the document. It is defined
            by view rectangle and zoom.
 
-Layers - document view is rendered using many layers. Such layers are: document
+`Layers` - document view is rendered using many layers. Such layers are: document
          background, scroll handles, and also the document tiles.
 
-Document view classes
----------------------
+### Document View Classes
 
-- LayerView (org.mozilla.gecko.gfx.LayerView) is the document view of the application.
-  It uses the SurfaceView (android.view.SurfaceView) as the main surface to draw on
+- `LayerView` (`org.mozilla.gecko.gfx.LayerView`) is the document view of the application.
+  It uses the `SurfaceView` (`android.view.SurfaceView`) as the main surface to draw on
   using OpenGL ES 2.
 
-- GLController (org.mozilla.gecko.gfx.GLController) - holder of the OpenGL context.
+- `GLController` (`org.mozilla.gecko.gfx.GLController`) - holder of the OpenGL context.
 
-- RenderControllerThread (org.mozilla.gecko.gfx.RenderControllerThread) executes the
+- `RenderControllerThread` (`org.mozilla.gecko.gfx.RenderControllerThread`) executes the
   rendering requests through LayerRenderer.
 
-- LayerRenderer (org.mozilla.gecko.gfx.LayerRenderer) renders all the layers.
+- `LayerRenderer` (`org.mozilla.gecko.gfx.LayerRenderer`) renders all the layers.
 
-- GeckoLayerClient (org.mozilla.gecko.gfx.GeckoLayerClient) is the middle man of the
+- `GeckoLayerClient` (`org.mozilla.gecko.gfx.GeckoLayerClient`) is the middle man of the
   application, which connects all the bits together. It is the document view layer
   holder so the any management (including tiled rendering) usually go through this
-  class. It listens to draw requests and viewport changes from PanZoomController
+  class. It listens to draw requests and viewport changes from `PanZoomController`
   (see "Touch events").
 
-Touch events, scrolling and zooming
------------------------------------
+### Touch Events, Scrolling and Zooming
 
-The main class that handles the touch event, scrolling and zooming is JavaPanZoomController
-org.mozilla.gecko.gfx.JavaPanZoomController (implementation of PanZoomController interface).
+The main class that handles the touch event, scrolling and zooming is `JavaPanZoomController`
+`org.mozilla.gecko.gfx.JavaPanZoomController` (implementation of `PanZoomController` interface).
 When the user performs a touch action, the document view needs to change, which means the
-viewport changes. JavaPanZoomController changes the viewport and signals the change through
-PanZoomTarget (org.mozilla.gecko.gfx.PanZoomTarget).
+viewport changes. `JavaPanZoomController` changes the viewport and signals the change through
+`PanZoomTarget` (`org.mozilla.gecko.gfx.PanZoomTarget`).
 
-TiledRendering
---------------
+### Tiled Rendering
 
 Tiled rendering is a technique that splits the document to bitmaps of same size (typically
 256x256) which are fetched on demand.
 
-In the application the ComposedTileLayer (org.mozilla.gecko.gfx.ComposedTileLayer) is the
+In the application the `ComposedTileLayer` (`org.mozilla.gecko.gfx.ComposedTileLayer`) is the
 layer responsible for tracking and managing the tiles. Tiles are in this case also layers
-(sub layers?) implemented in SubTile (org.mozilla.gecko.gfx.SubTile), where each one is
+(sub layers?) implemented in `SubTile` (`org.mozilla.gecko.gfx.SubTile`), where each one is
 responsible for one tile bitmap (actually OpenGL texture once it has been uploaded).
 
-When the viewport changes, the request for tile rechecking is send to LOKitThread (see
+When the viewport changes, the request for tile rechecking is send to `LOKitThread` (see
 LOKitThread#tileReevaluationRequest), where the tiles are rechecked, add and removed if
 necessary.
 
-CompositeTileLayer is actually an abstract class, which has two implementations. One is
-DynamicTileLayer (org.mozilla.gecko.gfx.DynamicTileLayer), which is used for main tile
-view of the document, and FixedZoomTileLayer (org.mozilla.gecko.gfx.FixedZoomTileLayer),
+`CompositeTileLayer` is actually an abstract class, which has two implementations. One is
+`DynamicTileLayer` (`org.mozilla.gecko.gfx.DynamicTileLayer`), which is used for main tile
+view of the document, and `FixedZoomTileLayer` (`org.mozilla.gecko.gfx.FixedZoomTileLayer`),
 which just renders the tiles at a fixed zoom level. This is then used as a background
 low resolution layer.
 
-Tile invalidation
------------------
+### Tile Invalidation
 
 Tile can change in LibreOffice when user changes the content (adds, removes text or changes
 the properties). In this case, an invalidation rectangle is signaled from LibreOffice, which
-includes a rectangle that needs to be invalidated. In this case LOKitThread gets this request
+includes a rectangle that needs to be invalidated. In this case `LOKitThread` gets this request
 via callback, and rechecks all tiles if they need to be invalidated. For more details see
 LOKitThread#tileInvalidation).
 
-Editing
-*******
+## Editing
 
 For editing there are 2 coarse tasks that the LibreOffice app must do:
+
 1. send input events to LibreOffice core (keyboard, touch and mouse)
 2. listen to messages (provided via callback) from LibreOffice core and react accordingly
 
@@ -131,38 +121,35 @@ LO core follows. For example: when the user writes to the keyboard, key event is
 an invalidation request from LO core follows. When user touches an image, a mouse event is
 sent, and a "new graphic selection" message from LO core follows.
 
-All keyboard and touch events are sent to LOKitThread as LOEvents. In LOKitThread they are
-processed and sent to LibreOffice core. The touch events originate in JavaPanZoomController,
-the keyboard events in LOKitInputConnectionHandler (org.libreoffice.LOKitInputConnectionHandler),
+All keyboard and touch events are sent to `LOKitThread` as `LOEvents`. In `LOKitThread` they are
+processed and sent to LibreOffice core. The touch events originate in `JavaPanZoomController`,
+the keyboard events in `LOKitInputConnectionHandler` (`org.libreoffice.LOKitInputConnectionHandler`),
 however there are other parts too - depending on the need.
 
-InvalidationHandler (org.libreoffice.InvalidationHandler) is the class that is responsible
+`InvalidationHandler` (`org.libreoffice.InvalidationHandler`) is the class that is responsible
 to process messages from LibreOffice core and to track the state.
 
-Overlay
-*******
+## Overlay
 
 Overlay elements like cursor and selections aren't drawn by the LO core, instead the core
 only provides data (cursor position, selection rectangles) and the app needs to draw them.
-DocumentOverlay (org.libreoffice.overlay.DocumentOverlay) and DocumentOverlayView
-(org.libreoffice.overlay.DocumentOverlayView) are the classes that provide the overlay over
+`DocumentOverlay` (`org.libreoffice.overlay.DocumentOverlay`) and `DocumentOverlayView`
+(`org.libreoffice.overlay.DocumentOverlayView`) are the classes that provide the overlay over
 the document, where selections and the cursor is drawn.
 
 
-Icons
-*****
+## Icons
 
 App uses material design icons available at [1].
 
 
-[1] - https://www.google.com/design/icons/
+[1] - <https://www.google.com/design/icons/>
 
-Emulator and debugging notes
-****************************
+## Emulator and Debugging Notes
 
-For instructions on how to build for Android, see README.cross.
+For instructions on how to build for Android, see `README.cross`.
 
-* Getting something running
+### Getting Something Running
 
 Attach your device, so 'adb devices' shows it. Then run:
 
@@ -173,7 +160,7 @@ Attach your device, so 'adb devices' shows it. Then run:
 and if all goes well, you should have some nice debug output to enjoy when you
 start the app.
 
-* Using the emulator
+### Using the Emulator
 
 Create an AVD in the android UI, don't even try to get the data partition size
 right in the GUI, that is doomed to producing an AVD that doesn't work.
@@ -183,103 +170,102 @@ Instead start it from the console:
 
 where <Name> is the literal name of the AVD that you entered.
 
-[ In order to have proper acceleration, you need the 32-bit libGL.so:
+[ In order to have proper acceleration, you need the 32-bit `libGL.so`:
 
         sudo zypper in Mesa-libGL-devel-32bit
 
 and run emulator-arm after the installation. ]
 
-Then you can run ant/adb as described above.
+Then you can run `ant`/`adb` as described above.
 
 After a while of this loop you might find that you have lost a lot of
-space on your emulator's or device's /data volume. You can do:
+space on your emulator's or device's `/data` volume. You can do:
 
         adb shell stop; adb shell start
 
-Debugging
----------
+## Debugging
 
-First of all, you need to configure the build with --enable-debug or
---enable-dbgutil.  You may want to provide --enable-symbols to limit debuginfo,
-like --enable-symbols="sw/" or so, in order to fit into the memory
+First of all, you need to configure the build with `--enable-debug` or
+`--enable-dbgutil`.  You may want to provide `--enable-symbols` to limit debuginfo,
+like `--enable-symbols="sw/"` or so, in order to fit into the memory
 during linking.
 
 Building with all symbols is also possible but the linking is currently
 slow (around 10 to 15 minutes) and you need lots of memory (around 16GB + some
 swap).
 
-* Using ndk-gdb
+### Using ndk-gdb
 
-Direct support for using ndk-gdb has been removed from the build system. It is
+Direct support for using `ndk-gdb` has been removed from the build system. It is
 recommended that you give the lldb debugger a try that has the benefit of being
 nicely integrated into Android Studio (see below for instructions).
-If you nevertheless want to continue using ndk-gdb, use the following steps
-that are described in more detail here: https://stackoverflow.com/a/10539883
+If you nevertheless want to continue using `ndk-gdb`, use the following steps
+that are described in more detail here: <https://stackoverflow.com/a/10539883>
 
-    - add android:debuggable="true" to AndroidManifest.xml
-    - push gdbserver to device, launch and attach to application
-    - forward debugging port from host to device
-    - launch matching gdb on host and run following setup commands:
+- add `android:debuggable="true"` to `AndroidManifest.xml`
+- push `gdbserver` to device, launch and attach to application
+- forward debugging port from host to device
+- launch matching gdb on host and run following setup commands:
         - set solib-search-path obj/local/<appAbi>
         - file obj/local/<appAbi>/liblo-native-code.so
         - target remote :<portused>
 
 Pretty printers aren't loaded automatically due to the single shared
 object, but you can still load them manually. E.g. to have a pretty-printer for
-rtl::OString, you need:
+`rtl::OString`, you need:
 
         (gdb) python sys.path.insert(0, "/master/solenv/gdb")
         (gdb) source /master/instdir/program/libuno_sal.so.3-gdb.py
 
-* Using Android Studio (and thus lldb)
+### Using Android Studio (and Thus lldb)
 
-Note that lldb might not yield the same results as ndk-gdb. If you suspect a
-problem with lldb, you can try to manually use ndk-gdb as described above.
-Using lldb from within Android Studio is more comfortable though and works like this:
+Note that lldb might not yield the same results as `ndk-gdb`. If you suspect a
+problem with `lldb`, you can try to manually use `ndk-gdb` as described above.
+Using `lldb` from within Android Studio is more comfortable though and works like this:
 
-    - open android/source/build.gradle in Android Studio via File|New → Import Project
-    - make sure you select the right build variant (strippedUIDebug is what you want)
-    - use Run|Edit Configurations to create a new configuration of type "Android Native"
-        - on tab "General" pick module "source"
-        - on tab "Native Debugger" add android/obj/local/<hostarch> to
-          the Symbol directories
-        - on the LLDB startup commands tab add
-          "command script import /path/to/solenv/lldb/libreoffice/LO.py"
-          to get some pretty printing hooks for the various string classes
+- open `android/source/build.gradle` in Android Studio via File|New → Import Project
+- make sure you select the right build variant (`strippedUIDebug` is what you want)
+- use Run|Edit Configurations to create a new configuration of type "Android Native"
+	- on tab "General" pick module "source"
+	- on tab "Native Debugger" add `android/obj/local/<hostarch>` to
+	the Symbol directories
+	- on the LLDB startup commands tab add
+	"command script import `/path/to/solenv/lldb/libreoffice/LO.py`"
+	to get some pretty printing hooks for the various string classes
 
 Then you can select your new configuration and use Run | Debug to launch it.
-Note that lldb doesn't initially stop execution, so if you want to add
+Note that `lldb` doesn't initially stop execution, so if you want to add
 breakpoints using lldb prompt, you manually have to pause execution, then you
 can switch to the lldb tab and add your breakpoints. However making use of the
 editor just using File|Open .. to open the desired file in Android Studio and
 then toggling the breakpoint by clicking on the margin is more comfortable.
 
-* Debugging the Java part
+### Debugging the Java Part
 
-Open android/source/build.gradle in Android studio via File|New → Import
+Open `android/source/build.gradle` in Android studio via File|New → Import
 Project and you can use Android Studio's debugging interface.
 Just make sure you pick the correct build variant (strippedUIDebug)
 
 The alternative is to use the jdb command-line debugger. Steps to use it:
 
-1) Find out the JDWP ID of a debuggable application:
+1. Find out the JDWP ID of a debuggable application:
 
         adb jdwp
 
-From the list of currently active JDWP processes, the last number is the just
+    From the list of currently active JDWP processes, the last number is the just
 started debuggable application.
 
-2) Forward the remote JDWP port/process ID to a local port:
+2. Forward the remote JDWP port/process ID to a local port:
 
         adb forward tcp:7777 jdwp:31739
 
-3) Connect to the running application:
+3. Connect to the running application:
 
         jdb -sourcepath src/java/ -attach localhost:7777
 
 Assuming that you're already in the LOAndroid3 directory in your shell.
 
-* Debugging the missing services
+### Debugging the Missing Services
 
 Android library only include essential services that are compiled for
 LibreOffice in order to reduce the size of the apk. When developing,
@@ -287,40 +273,40 @@ some services might become useful and we should add those services
 to the combined library.
 
 In order to identify missing services, we need to be able to receive
-SAL_INFO from cppuhelper/source/shlib.cxx in logcat and therefore identify
+`SAL_INFO` from `cppuhelper/source/shlib.cxx` in logcat and therefore identify
 what services are missing. To do so, you may want add the following
 when configuring the build.
 
     --enable-symbols="cppuhelper/ sal/"
 
-[TODO: This is nonsense. --enable-symbols enables the -g option, not SAL_INFO.
-Perhaps this was a misunderstanding of meaning of --enable-selective-debuginfo,
+[TODO: This is nonsense. `--enable-symbols` enables the `-g` option, not `SAL_INFO`.
+Perhaps this was a misunderstanding of meaning of `--enable-selective-debuginfo`,
 the old name for the option.]
 
 Which services are combined in the android lib is determined by
 
     solenv/bin/native-code.py
 
-* Common Errors / Gotchas
+### Common Errors / Gotchas
 
-lo_dlneeds: Could not read ELF header of /data/data/org.libreoffice...libfoo.so
-        This (most likely) means that the install quietly failed, and that
-the file is truncated; check it out with adb shell ls -l /data/data/...
+    lo_dlneeds: Could not read ELF header of /data/data/org.libreoffice...libfoo.so
+This (most likely) means that the install quietly failed, and that
+the file is truncated; check it out with `adb shell ls -l /data/data/...`
 
-* Startup details
+### Startup Details
 
 All Android apps are basically Java programs. They run "in" a Dalvik
 (or on Android 5 or newer - ART) virtual machine. Yes, you can also
 have apps where all *your* code is native code, written in a compiled
 language like C or C++. But also such apps are actually started
-by system-provided Java bootstrapping code (NativeActivity) running
+by system-provided Java bootstrapping code (`NativeActivity`) running
 in a Dalvik VM.
 
 Such a native app (or actually, "activity") is not built as a
-executable program, but as a shared object. The Java NativeActivity
+executable program, but as a shared object. The Java `NativeActivity`
 bootstrapper loads that shared object with dlopen.
 
-Anyway, our current "experimental" apps are not based on NativeActivity.
+Anyway, our current "experimental" apps are not based on `NativeActivity`.
 They have normal Java code for the activity, and just call out to a single,
-app-specific native library (called liblo-native-code.so) to do all the
+app-specific native library (called `liblo-native-code.so`) to do all the
 heavy lifting.
diff --git a/animations/README.md b/animations/README.md
index 00769956f0b2..d03a756a1682 100644
--- a/animations/README.md
+++ b/animations/README.md
@@ -1 +1,3 @@
-Contains containers for the css::animation UNO API, used in [[slideshow]] and [[sd]].
+# Containers for the css::animation animation UNO API
+
+Contains containers for the `css::animation` UNO API, used in `slideshow` and `sd`.
diff --git a/apple_remote/README.md b/apple_remote/README.md
index cf099f284750..aed352e42e4b 100644
--- a/apple_remote/README.md
+++ b/apple_remote/README.md
@@ -1,12 +1,17 @@
-Library to interact with the Apple Remote Control on Mac
+# Apple Remote Control Support for Mac
 
-This is an early version of Martin Kahr's Remote Control Wrapper
+The library is used to interact with the "Apple Remote Control" on Mac.
+
+This is an early version of Martin Kahr's "Remote Control Wrapper"
 library
 (http://martinkahr.com/2007/07/26/remote-control-wrapper-20/index.html
 ) with modifications by Eric Bachard. Unfortunately the exact extent
 of (and rationale behind) the modifications done is unknown, at least
 until the original upstream source version it is based on is
 found. Version control of this just starts with the monolithic commit
-of the appleremote01 CWS. Some technical detail can be found in the
+of the `appleremote01` CWS. Some technical detail can be found in the
 OOo wiki:
-http://wiki.openoffice.org/wiki/Mac_OS_X_Porting_-_Apple_Remote_implementation
+
+## See Also
+
+<http://wiki.openoffice.org/wiki/Mac_OS_X_Porting_-_Apple_Remote_implementation>
diff --git a/avmedia/README.md b/avmedia/README.md
index 32155b2ac1cf..51202cbe34b2 100644
--- a/avmedia/README.md
+++ b/avmedia/README.md
@@ -1,18 +1,18 @@
-Audio/Video media implementation.
+# Audio / video Media Implementation.
 
 Provides per-platform implementations of multimedia functionality.
 Currently no stream API is provided, only a URI based one, so
 streaming has to be wrapped around it via temp files.
 
-Also provides (in source/framework/mediacontrol.cxx) an implementation
+Also provides (in `source/framework/mediacontrol.cxx`) an implementation
 of the graphical media playback control that appears in the toolbar /
-mediaobject bar when media is selected under the .uno:AVMediaToolBox
+mediaobject bar when media is selected under the `.uno:AVMediaToolBox`
 item.
 
-== avmedia/gstreamer ==
+## avmedia / gstreamer
 
-The avmedia component is implementation of manager service defined in
-offapi/com/sun/star/media/. Radek has added implementation based on
+The `avmedia` component is implementation of manager service defined in
+`offapi/com/sun/star/media/`. Radek has added implementation based on
 gstreamer so that we can add audio and video files into impress
 presentation on Linux with gstreamer.
 
@@ -22,4 +22,6 @@ problems when gstreamer installation is incomplete.
 In the beginning the media files were not embedded, Thorsten added
 support for that later.
 
-FUTURE work: it might be worthwhile to revamp the avmedia UI
+## Future Works
+
+it might be worthwhile to revamp the avmedia UI.
diff --git a/basctl/README.md b/basctl/README.md
index 44cdd8f6c46b..bf550607668f 100644
--- a/basctl/README.md
+++ b/basctl/README.md
@@ -1 +1,3 @@
-Controls and dialogs for Basic. Contains the Basic IDE.
+# BASIC IDE Controls and Dialogs
+
+Controls and dialogs for BASIC. Contains the BASIC IDE.
diff --git a/basegfx/README.md b/basegfx/README.md
index 99f0feb7ae30..fd4660d8eab1 100644
--- a/basegfx/README.md
+++ b/basegfx/README.md
@@ -1 +1,3 @@
-Algorithms and data types for graphics (e.g. polygons, vectors, matrices and the like - see that used in [[canvas]]).
+# Algorithms and Data Types for Graphics
+
+Algorithms and data types for graphics (e.g. polygons, vectors, matrices and the like - see that used in "canvas").
diff --git a/basic/README.md b/basic/README.md
index c7e6654c1057..b1fcf8123b8b 100644
--- a/basic/README.md
+++ b/basic/README.md
@@ -1,8 +1,10 @@
+# StarBASIC Interpreter
+
 Contains the StarBASIC Interpreter
 
 This implements a macro language that, when in VBA compatibility mode,
 is intended to be interoperable with Visual Basic for Applications,
 allowing people to run macros embedded in their documents.
 
-See also:
-[http://wiki.openoffice.org/wiki/Basic]
+## See also
+<http://wiki.openoffice.org/wiki/Basic>
diff --git a/bean/README.md b/bean/README.md
index 74fe28461ed6..7c8005bcb450 100644
--- a/bean/README.md
+++ b/bean/README.md
@@ -1,3 +1,3 @@
-To use LibreOffice from Java applications.
+# API to Use LibreOffice from Java Applications (OfficeBean)
 
 LibreOffice's API is completely exposed so that all office components can be fully controlled.
diff --git a/bin/README.md b/bin/README.md
index d5d0829ce1d3..572be3174773 100644
--- a/bin/README.md
+++ b/bin/README.md
@@ -1,9 +1,11 @@
+# Tools and Non-Build Scripts
+
 Tools and scripts mostly not used during the build
 
 This direction has a number of key pieces (?) that are used during the
 build, or are simply generally useful. One example is
 
-bin/find-german-comments <directory>
+    bin/find-german-comments <directory>
 
 which will try to detect and extract all the German comments in a
 given source code hierarchy / directory.
diff --git a/binaryurp/README.md b/binaryurp/README.md
index 1f1e088944f6..ac26bec0621e 100644
--- a/binaryurp/README.md
+++ b/binaryurp/README.md
@@ -1,9 +1,8 @@
-UNO Remote Protocol (URP). A binary protocol. 
+# UNO Remote Protocol (URP)
 
-UNO provides a protocol called the UNO Remote Protocol (URP) that provides
+UNO provides a binary protocol called the UNO Remote Protocol (URP) that provides
 a bridge between UNO environments. This bridge allows processes and objects
 to send method calls and to receive return values. UNO objects in different 
 environments are connected by way of this interprocess bridge. The underlying 
 connection is made through a socket or pipe. Remote UNO objects are connected
 by means of TCP/IP using the high-level protocol of the URP.
-
diff --git a/bridges/README.md b/bridges/README.md
index 7c0eee30bbba..37c4485eecc8 100644
--- a/bridges/README.md
+++ b/bridges/README.md
@@ -1,4 +1,6 @@
-Bridges from various C++ ABIs, Java JNI, MS .Net to UNO and back.
+# UNO Bridges
 
-Also implementation of the UNO Remote Protocol. And in ooo-build a bridge from Mono to UNO and back.
+Bridges from various C++ ABIs, Java JNI, MS .NET to UNO and back. A bridge for .NET is in
+`cli_ure`.
 
+Also implementation of the UNO Remote Protocol.
diff --git a/canvas/README.md b/canvas/README.md
index b68da4c3bf5c..459b588d6f6a 100644
--- a/canvas/README.md
+++ b/canvas/README.md
@@ -1,46 +1,53 @@
+# UNO-based Graphics Backend
+
 UNO-based graphics backend, lesser impedance to modern graphics APIs
 than vcl.
 
-== The Canvas Framework ==
+## The canvas Framework
 
-The canvas framework is the successor of the system GUI and graphics
+The `canvas` framework is the successor of the system GUI and graphics
 backend VCL. Basic functionality is available, supplying just as much
 features as necessary to provide a VCL-equivalent feature set (except
 proper BiDi/CTL support).
 
-The canvas framework consists of the following two modules, canvas and
-cppcanvas. Additionally, a new generic graphics tooling is used (but
+The `canvas` framework consists of the following two modules, `canvas` and
+`cppcanvas`. Additionally, a new generic graphics tooling is used (but
 not exclusively by the canvas, Armin's drawinglayer module also make
-use of it), which resides in basegfx.
+use of it), which resides in `basegfx`.
 
 The UNO API used by the canvas is primarily under
-css::rendering, with css::rendering::XCanvas
+`css::rendering`, with `css::rendering::XCanvas`
 being the central interface.
 
-== The slideshow engine ==
+## The slideshow Engine
 
-The slideshow engine has replaced the former Impress-embedded
+The `slideshow` engine has replaced the former Impress-embedded
 presentation framework with a fully independent UNO component, and it
 is based on the canvas. Some features used there are only available
-from canvas, like double-buffering, and hardware-accelerated
+from `canvas`, like double-buffering, and hardware-accelerated
 alpha-blending (currently not on all platforms).
 
-== Cairo canvas ==
+## Cairo canvas
 
-cairo canvas is one of backends of canvas component. canvas is mostly
+Cairo `canvas` is one of backends of canvas component. `canvas` is mostly
 used for slideshow rendering and also for emf+ rendering. we hoped it
 will even be used by drawing layer, but it didn't happen (yet?) for
-API look at offapi/com/sun/star/rendering/, the implementation is in
-canvas and cppcanvas modules.
+API look at `offapi/com/sun/star/rendering/`, the implementation is in
+`canvas` and `cppcanvas` modules.
 
-cairo canvas backend uses cairo library for rendering. main advantage
+Cairo `canvas` backend uses Cairo library for rendering. Main advantage
 is support of alpha transparency and in some cases accelerated
 rendering.
 
-the backend itself is quite old and stable, not many changes in that
+The backend itself is quite old and stable, not many changes in that
 area lately, mostly changes for emf+ rendering, communication with
 vcl and bugfixes
 
-FUTURE work: look at cairo canvas and situation when it is used
-(mostly slideshow). TODO there still might be more cases when we
+## Future Works
+
+Look at Cairo `canvas` and situation when it is used
+(mostly slideshow).
+
+## TODO
+There still might be more cases when we
 can save some roundtrips when exchanging data with vcl.
diff --git a/chart2/README.md b/chart2/README.md
index 56eb0ed08cd8..fa63da9bcc4e 100644
--- a/chart2/README.md
+++ b/chart2/README.md
@@ -1,9 +1,9 @@
-Chart implementation for LibreOffice Calc.
+# Chart Implementation for LibreOffice Calc
 
-The chart2 denotes a second generation re-write done to rid us of the
+The `chart2` denotes a second generation re-write done to rid us of the
 foul and twisted legacy chart code.
 
-== Debugging ==
+## Debugging
 
-=== CTRL + F12 ===
-This creates a layout dump based on the XShapeDumper based on SAL_WARN("chart2", ...
+### Shortcuts
+CTRL + F12 creates a layout dump based on the `XShapeDumper` based on `SAL_WARN("chart2", ...`
diff --git a/cli_ure/README.md b/cli_ure/README.md
index 8f173dffe8ab..8cf07cf00b24 100644
--- a/cli_ure/README.md
+++ b/cli_ure/README.md
@@ -1,5 +1,6 @@
-Common Lang Infrastructure Uno Runtime Environment - support assemblies and tools for the MS .Net (and Mono) UNO binding.
+# Common Language Infrastructure (CLI) UNO Runtime Environment
 
-See also:
-[git:cli_ure/source/readme.txt]
+Support assemblies and tools for the MS .NET UNO binding.
 
+## See also
+`git:cli\_ure/readme.txt`
diff --git a/codemaker/README.md b/codemaker/README.md
index 436086cec5e5..c195112fde69 100644
--- a/codemaker/README.md
+++ b/codemaker/README.md
@@ -1,17 +1,19 @@
+# Language Code Generators for UNOIDL Entities
+
 Generators for language-binding--specific representations of UNOIDL entities:
-- cppumaker generates header (.hdl and .hpp) files for the C++ UNO language
-  binding
-- javamaker generates class files for the JVM language binding
-- the codemaker for .Net is in module cli_ure
 
-Some of the code is re-used by the skeletonmakers in module unodevtools.
+- `cppumaker` generates header (`.hdl` and `.hpp`) files for the C++ UNO language
+  binding
+- `javamaker` generates class files for the JVM language binding
+- the codemaker for .NET is in module `cli_ure`
 
+Some of the code is re-used by the skeletonmakers in module `unodevtools`.
 
 Note the different terminology used by cppumaker vs. gbuild for the three
 variants that can be generated by cppumaker for some of the inline functions:
 
-  cppumaker switch: -L;    cpputype.cxx: light;          gbuild: normal;
-  cppumaker switch: none;  cpputype.cxx: normal;         gbuild: bootstrap;
-  cppumaker switch: -C;    cpputype.cxx: comprehensive;  gbuild: comprehensive;
+    cppumaker switch: -L;    cpputype.cxx: light;          gbuild: normal;
+    cppumaker switch: none;  cpputype.cxx: normal;         gbuild: bootstrap;
+    cppumaker switch: -C;    cpputype.cxx: comprehensive;  gbuild: comprehensive;
 
-...a recipe for confusion.
+which can be a source of confusion.
diff --git a/comphelper/README.md b/comphelper/README.md
index e27793533e9a..5369639e9885 100644
--- a/comphelper/README.md
+++ b/comphelper/README.md
@@ -1,4 +1,4 @@
-Helper functionality for implementing UNO components
+# Helpers for Implementing UNO Components
 
-...anything not generic/mature enough to end up in URE's stable interface at
-cppuhelper etc.
+Here goes anything not generic / mature enough to end up in URE's stable interface
+at `cppuhelper`, etc.
diff --git a/compilerplugins/README.md b/compilerplugins/README.md
index c48341e0f0d2..e076f408f07a 100644
--- a/compilerplugins/README.md
+++ b/compilerplugins/README.md
@@ -1,69 +1,66 @@
-Compiler plugins.
+# Compiler plugins
 
-
-== Overview ==
+## Overview
 
 This directory contains code for compiler plugins. These are used to perform
 additional actions during compilation (such as additional warnings) and
 also to perform mass code refactoring.
 
-Currently only the Clang compiler is supported (http://wiki.documentfoundation.org/Development/Clang).
-
+Currently only the Clang compiler is supported <http://wiki.documentfoundation.org/Development/Clang>.
 
-== Usage ==
+## Usage
 
-Compiler plugins are enabled automatically by --enable-dbgutil if Clang headers
-are found or explicitly using --enable-compiler-plugins.
+Compiler plugins are enabled automatically by `--enable-dbgutil` if Clang headers
+are found or explicitly using `--enable-compiler-plugins`.
 
-
-== Functionality ==
+## Functionality
 
 There are two kinds of plugin actions:
+
 - compile checks - these are run during normal compilation
 - rewriters - these must be run manually and modify source files
 
 Each source has a comment saying whether it's compile check or a rewriter
 and description of functionality.
 
-=== Compile checks ===
+### Compile Checks
 
 Used during normal compilation to perform additional checks.
 All warnings and errors are marked '[loplugin]' in the message.
 
-
-=== Rewriters ===
+### Rewriters
 
 Rewriters analyse and possibly modify given source files.
-Usage: make COMPILER_PLUGIN_TOOL=<rewriter_name>
+Usage: `make COMPILER_PLUGIN_TOOL=<rewriter_name>`
 Additional optional make arguments:
-- it is possible to also pass FORCE_COMPILE_ALL=1 to make to trigger rebuild of all source files,
+
+- it is possible to also pass `FORCE_COMPILE_ALL=1` to make to trigger rebuild of all source files,
     even those that are up to date.
-- UPDATE_FILES=<scope> - limits which modified files will be actually written back with the changes
-    - mainfile - only the main .cxx file will be modified (default)
-    - all - all source files involved will be modified (possibly even header files from other LO modules),
+- `UPDATE_FILES=<scope>` - limits which modified files will be actually written back with the changes
+    - `mainfile` - only the main `.cxx` file will be modified (default)
+    - `all` - all source files involved will be modified (possibly even header files from other LO modules),
         3rd party header files are however never modified
-    - <module> - only files in the given LO module (toplevel directory) will be modified (including headers)
+    - `<module>` - only files in the given LO module (toplevel directory) will be modified (including headers)
 
 Modifications will be written directly to the source files.
 
 Some rewriter plugins are dual-mode and can also be used in a non-rewriting mode
 in which they emit warnings for problematic code that they would otherwise
-automatically rewrite.  When any rewriter is enabled explicitly via "make
-COMPILER_PLUGIN_TOOL=<rewriter_name>" it works in rewriting mode (and all other
+automatically rewrite.  When any rewriter is enabled explicitly via `make
+COMPILER_PLUGIN_TOOL=<rewriter_name>` it works in rewriting mode (and all other
 plugins are disabled), but when no rewriter is explicitly enabled (i.e., just
-"make"), all dual-mode rewriters are enabled in non-rewriting mode (along with
+`make`), all dual-mode rewriters are enabled in non-rewriting mode (along with
 all non-rewriter plugins; and all non--dual-mode plugins are disabled).  The
 typical process to use such a dual-mode rewriter X in rewriting mode is
 
-  make COMPILER_PLUGIN_WARNINGS_ONLY=X \
-  && make COMPILER_PLUGIN_TOOL=X FORCE_COMPILE_ALL=1 UPDATE_FILES=all
+    make COMPILER_PLUGIN_WARNINGS_ONLY=X \
+    && make COMPILER_PLUGIN_TOOL=X FORCE_COMPILE_ALL=1 UPDATE_FILES=all
 
 which first generates a full build without failing due to warnings from plugin
-X in non-rewriting mode (in case of --enable-werror) and then repeats the build
+X in non-rewriting mode (in case of `--enable-werror`) and then repeats the build
 in rewriting mode (during which no object files are generate).
 
 
-== Code documentation / howtos ==
-
-http://wiki.documentfoundation.org/Clang_plugins
+## Code Documentation / HowTos
 
+<http://wiki.documentfoundation.org/Clang_plugins>
diff --git a/config_host/README.md b/config_host/README.md
index 5dd2d5263481..af5030460d35 100644
--- a/config_host/README.md
+++ b/config_host/README.md
@@ -1,25 +1,24 @@
-These are configuration files for various features as detected by configure.
+# C/C++ Configuration Created by configure Script
+
+These are configuration files for various features as detected by `configure`.
 
 Include only those files you need (in order to reduce rebuilds when a setting changes).
 
-Settings here are only C/C++ #define directives, so they apply only to C/C++ source,
+Settings here are only C/C++ `#define` directives, so they apply only to C/C++ source,
 not to Makefiles.
 
+## Adding a New Setting:
 
-
-Adding a new setting:
-=====================
-
-- do AC_DEFINE(HAVE_FOO) in configure.ac when a setting should be set
-- choose the proper config_host/config_XXX.h file to use
+- do `AC_DEFINE(HAVE_FOO)` in `configure.ac` when a setting should be set
+- choose the proper `config_host/config_XXX.h` file to use
     - if it is a global setting (such as availability of a compiler feature),
-        use config_host/config_global.h
-    - otherwise check if there is a matching config_host/config_XXX.h file
+        use `config_host/config_global.h`
+    - otherwise check if there is a matching `config_host/config_XXX.h` file
     - if none matches, add a new one:
-        - add config_host/config_XXX.h.in here, with just #ifndef include guard
-        - add AC_CONFIG_HEADERS([config_host/config_XXX.h]) next to the others
-            in configure.ac
-- add #define HAVE_FOO 0 to the config_host/config_XXX.h , possibly with a comment
-  (do not use #undef HAVE_FOO, unless the setting has more values than on/off)
-- add #include <config_XXX.h> before any #if HAVE_FOO in a source file
-- make sure you use #if HAVE_FOO for on/off settings, do not use #ifdef
+        - add `config_host/config_XXX.h.in` here, with just `#ifndef` include guard
+        - add `AC_CONFIG_HEADERS([config_host/config_XXX.h])` next to the others
+            in `configure.ac`
+- add `#define HAVE_FOO 0` to the `config_host/config_XXX.h`, possibly with a comment
+  (do not use `#undef HAVE_FOO`, unless the setting has more values than on/off)
+- add `#include <config_XXX.h>` before any #if `HAVE_FOO` in a source file
+- make sure you use `#if HAVE_FOO` for on/off settings, do not use `#ifdef`
diff --git a/configmgr/README.md b/configmgr/README.md
index 36a1340ed82a..0534b592e79e 100644
--- a/configmgr/README.md
+++ b/configmgr/README.md
@@ -1,68 +1,68 @@
-UNO services to access the configuration database
+# UNO Services to Access the Configuration Database
 
-== Functional Overview ==
+## Functional Overview
 
-This code parses the settings that are described in the [[officecfg]]
+This code parses the settings that are described in the `officecfg`
 directory, and provides a UNO API that code can use to set and get
 settings.
 
-== Source Overview ==
+## Source Overview
 
-configurationprovider.cxx
-configurationregistry.cxx
-defaultprovider.cxx
-services.cxx
- UNO service implementations.
+    configurationprovider.cxx
+    configurationregistry.cxx
+    defaultprovider.cxx
+    services.cxx
+UNO service implementations.
 
-access.cxx
-childaccess.cxx
-rootaccess.cxx
- UNO objects passed to clients.
+    access.cxx
+    childaccess.cxx
+    rootaccess.cxx
+UNO objects passed to clients.
 
-components.cxx
- Central singleton that aggregates all data (reads in the XML files, manages
- modifications and global notifications).
+    components.cxx
+Central singleton that aggregates all data (reads in the XML files, manages
+modifications and global notifications).
 
-groupnode.cxx
-localizedpropertynode.cxx
-localizedvaluenode.cxx
-node.cxx
-propertynode.cxx
-setnode.cxx
- Internal representations of data nodes.
+    groupnode.cxx
+    localizedpropertynode.cxx
+    localizedvaluenode.cxx
+    node.cxx
+    propertynode.cxx
+    setnode.cxx
+Internal representations of data nodes.
 
-parsemanager.cxx
-parser.hxx
-valueparser.cxx
-xcdparser.cxx
-xcsparser.cxx
-xcuparser.cxx
-xmldata.cxx
- XML file reading.
+    parsemanager.cxx
+    parser.hxx
+    valueparser.cxx
+    xcdparser.cxx
+    xcsparser.cxx
+    xcuparser.cxx
+    xmldata.cxx
+XML file reading.
 
-modifications.cxx
-writemodfile.cxx
- Modification management.
+    modifications.cxx
+    writemodfile.cxx
+Modification management.
 
-broadcaster.cxx
- Notification management.
+    broadcaster.cxx
+Notification management.
 
-additions.hxx
-update.cxx
- Extension manager interface.
+    additions.hxx
+    update.cxx
+Extension manager interface.
 
-data.cxx
-lock.cxx
-nodemap.cxx
-partial.cxx
-path.hxx
-type.cxx
- Utilities.
+    data.cxx
+    lock.cxx
+    nodemap.cxx
+    partial.cxx
+    path.hxx
+    type.cxx
+Utilities.
 
 
-== Some Implementation Notes ==
+## Some Implementation Notes
 
-=== Mandatory Set Members ===
+### Mandatory Set Members
 
 - A set member can be marked as "mandatory," meaning that a member of that name
 must always be present in a set.
@@ -70,67 +70,68 @@ must always be present in a set.
 - The above definition implies that calling replaceByName on a mandatory set
 member is OK.
 
-- The XCU format can contain oor:mandatory attributes on nodes.  (The XCS format
-does not support them.  In the registrymodifications file, oor:mandatory
+- The XCU format can contain `oor:mandatory` attributes on nodes.  (The XCS format
+does not support them.  In the `registrymodifications` file, `oor:mandatory`
 attributes should never be needed, as being mandatory cannot be controlled via
-the UNO API.)  The XCU reading code only evaluates the oor:mandatory attribute
+the UNO API.)  The XCU reading code only evaluates the `oor:mandatory` attribute
 for set members, and ignores it everywhere else.
 
-- Only true sets support mandatory members.  A localized property for the "*"
+- Only true sets support mandatory members.  A localized property for the "`*`"
 locale, though acting much like a set, does not support mandatory members.
 
-- The OpenOffice.org Registry Format document claims that group extension
+- The LibreOffice Registry Format document claims that group extension
 properties are implicitly mandatory, but at least the new configmgr code does
 not treat them like that (i.e., they can be removed again).
 
-- For simplicity, setMandatory/getMandatory are available as virtual functions
-at the base Node, even though they can only make sense for GroupNodes and
-SetNodes that are set members.  The default getMandatory implementation returns
-NO_LAYER, meaning oor:mandatory is not set to true in any layer.  (Returning
-NO_LAYER simplifies the code, e.g., removeByName does not have to check whether
-getMandatory is called on a member of a true set to decide whether to forbid
+- For simplicity, `setMandatory/getMandatory` are available as virtual functions
+at the base `Node`, even though they can only make sense for `GroupNodes` and
+SetNodes that are set members.  The default `getMandatory` implementation returns
+`NO_LAYER`, meaning `oor:mandatory` is not set to true in any layer.  (Returning
+`NO_LAYER` simplifies the code, e.g., `removeByName` does not have to check whether
+`getMandatory` is called on a member of a true set to decide whether to forbid
 removal.)
 
 - When committing changes (made through the UNO API), the "mandatory" status of
-inserted nodes must be updated (in case the insert is due to a replaceByName, or
+inserted nodes must be updated (in case the insert is due to a `replaceByName`, or
 the "mandatory" flag was added by a concurrent modification of a lower layer).
 Also, for to-be-removed nodes, removal is ignored for (newly; due to concurrent
 modification of a lower layer) mandatory nodes (but still recorded in
-registrymodifications, so may take effect once the lower layer addition is
+`registrymodifications`, so may take effect once the lower layer addition is
 removed again---whether or not that is a good idea).
 
 
-=== XcuParser Modification Recording ===
+### XcuParser Modification Recording
 
-- XcuParser records modifications when reading user layer data
-(valueParser_.getLayer() == Data::NO_LAYER).
+- `XcuParser` records modifications when reading user layer data
+(`valueParser_.getLayer() == Data::NO_LAYER`).
 
-- oor:finalized and oor:mandatory attributes cannot be set via the UNO API, so
+- `oor:finalized and `oor:mandatory` attributes cannot be set via the UNO API, so
 it is assumed that user layer data does not contain them (for one, they are not
-written by writeModFile; for another, the logic to record modifications expects
-a locprop(modify,fuse) to be followed by one or more value(fuse,remove), which
-would not necessarily be true if the locprop were only present in the user layer
+written by `writeModFile`; for another, the logic to record modifications expects
+a `locprop(modify,fuse)` to be followed by one or more `value(fuse,remove)`, which
+would not necessarily be true if the `locprop` were only present in the user layer
 data to flag it as finalized).
 
 - The logic to record modifications considers the top of the XML element stack.
 In the following list of all possible cases, items marked with an asterisk are
 recorded:
- ... group(modify,fuse) - group(modify,fuse) - ...
- ... group(modify,fuse) - set(modify,fuse) - ...
- ... group(modify,fuse) - *prop(modify,fuse,replace) - value(fuse)
- ... group(modify,fuse) - *prop(remove)
- ... group(modify,fuse) - locprop(modify,fuse) - *value(fuse)
- ... group(modify,fuse) - locprop(modify,fuse) - *value(remove)
- ... group(modify,fuse) - *locprop(replace) ...
- ... set(modify,fuse,replace) - group(modify/fuse) - ...
- ... set(modify,fuse,replace) - *group(replace/fuse) - ...
- ... set(modify,fuse,replace) - *group(remove)
- ... set(modify,fuse,replace) - set(modify/fuse) - ...
- ... set(modify,fuse,replace) - *set(replace/fuse) - ...
- ... set(modify,fuse,replace) - *set(remove)
-Legend: "...": zero or more further items
-        "- ...": one or more further items
-        "modify,fuse" etc.: any of those operations
-        "modify/fuse": a modify or a fuse on an existing member
-        "replace/fuse": a replace or a fuse on a non-existing member
 
+        ... group(modify,fuse) - group(modify,fuse) - ...
+        ... group(modify,fuse) - set(modify,fuse) - ...
+        ... group(modify,fuse) - *prop(modify,fuse,replace) - value(fuse)
+        ... group(modify,fuse) - *prop(remove)
+        ... group(modify,fuse) - locprop(modify,fuse) - *value(fuse)
+        ... group(modify,fuse) - locprop(modify,fuse) - *value(remove)
+        ... group(modify,fuse) - *locprop(replace) ...
+        ... set(modify,fuse,replace) - group(modify/fuse) - ...
+        ... set(modify,fuse,replace) - *group(replace/fuse) - ...
+        ... set(modify,fuse,replace) - *group(remove)
+        ... set(modify,fuse,replace) - set(modify/fuse) - ...
+        ... set(modify,fuse,replace) - *set(replace/fuse) - ...
+        ... set(modify,fuse,replace) - *set(remove)
+        Legend:
+            "...": zero or more further items
+            "- ...": one or more further items
+            "modify,fuse" etc.: any of those operations
+            "modify/fuse": a modify or a fuse on an existing member
+            "replace/fuse": a replace or a fuse on a non-existing member
diff --git a/connectivity/README.md b/connectivity/README.md
index 40525a522227..af57e1566daf 100644
--- a/connectivity/README.md
+++ b/connectivity/README.md
@@ -1,44 +1,50 @@
+# Database Connectivity
+
 Contains database pieces, drivers, etc.
 
-[[dbaccess]] builds UI on top of this.
+`dbaccess` builds UI on top of this.
 
-=== PostgreSQL ===
+## Testing
+### PostgreSQL
 
 For testing, use:
 
-podman pull postgres:latest
-podman run --name=postgres -e POSTGRES_PASSWORD=foobarbaz -p 127.0.0.1:5432:5432 postgres:latest
+    podman pull postgres:latest
+    podman run --name=postgres -e POSTGRES_PASSWORD=foobarbaz -p 127.0.0.1:5432:5432 postgres:latest
 
 In Base, Connect to an existing database, select PostgreSQL:
 
-URL: host=127.0.0.1 port=5432 dbname=postgres
-User: postgres
-Password: foobarbaz
-
-podman stop postgres
-podman rm postgres
+    URL: host=127.0.0.1 port=5432 dbname=postgres
+    User: postgres
+    Password: foobarbaz
+    
+    podman stop postgres
+    podman rm postgres
 
 In order to test SCRAM authentication, create the container like this:
 
-podman run --name=postgres -e POSTGRES_PASSWORD=foobarbaz -e POSTGRES_INITDB_ARGS=--auth-host=scram-sha-256 -e POSTGRES_HOST_AUTH_METHOD=scram-sha-256 -p 127.0.0.1:5432:5432 postgres:latest
+    podman run --name=postgres -e POSTGRES_PASSWORD=foobarbaz -e POSTGRES_INITDB_ARGS=--auth-host=scram-sha-256 -e POSTGRES_HOST_AUTH_METHOD=scram-sha-256 -p 127.0.0.1:5432:5432 postgres:latest
 
-=== mysql_test ===
+### MySQL
+
+For mysql_test:
 
 - The CppunitTest_mysql_test unit test can be used to test the mysqlc
-  library with any versions of mysql or mariadb server of your choice.
+library with any versions of mysql or mariadb server of your choice.
   
 - This test does not run automatically. It can be triggered with setting
-  the environment variable "CONNECTIVITY_TEST_MYSQL_DRIVER".
+the environment variable "CONNECTIVITY_TEST_MYSQL_DRIVER".
   
 - The environment variable should contain a URL of the following format:
-  [user]/[passwd]@sdbc:mysql:mysqlc:[host]:[port]/db_name
+`[user]/[passwd]@sdbc:mysql:mysqlc:[host]:[port]/db_name`
 
 - tl;dr:
 
-  podman pull mariadb/server
-  podman run --name=mariadb -e MYSQL_ROOT_PASSWORD=foobarbaz -p 127.0.0.1:3306:3306 mariadb/server
-  podman exec -it mariadb /bin/bash -c "echo -e CREATE DATABASE test | /usr/bin/mysql -u root"
-  (cd connectivity && make -srj8 CppunitTest_connectivity_mysql_test CONNECTIVITY_TEST_MYSQL_DRIVER="root/foobarbaz at sdbc:mysql:mysqlc:127.0.0.1:3306/test")
-  podman stop mariadb
-  podman rm mariadb
-
+```
+    podman pull mariadb/server
+    podman run --name=mariadb -e MYSQL_ROOT_PASSWORD=foobarbaz -p 127.0.0.1:3306:3306 mariadb/server
+    podman exec -it mariadb /bin/bash -c "echo -e CREATE DATABASE test | /usr/bin/mysql -u root"
+    (cd connectivity && make -srj8 CppunitTest_connectivity_mysql_test CONNECTIVITY_TEST_MYSQL_DRIVER="root/foobarbaz at sdbc:mysql:mysqlc:127.0.0.1:3306/test")
+    podman stop mariadb
+    podman rm mariadb
+```
diff --git a/cppcanvas/README.md b/cppcanvas/README.md
index 1e9083101434..f32b026bb0d0 100644
--- a/cppcanvas/README.md
+++ b/cppcanvas/README.md
@@ -1,5 +1,7 @@
-Helper C++ classes for [[canvas]], plus a GDIMetaFile-to-XCanvas converter.
+# C++ Helper Classes for canvas
 
-== EMF+ ==
+Helper C++ classes for `canvas`, plus a `GDIMetaFile`-to-`XCanvas` converter.
 
-For cppcanvas/source/mtfrenderer, see the README in vcl (the EMF+ part).
+## EMF+
+
+For `cppcanvas/source/mtfrenderer`, see the `README.md` in `vcl` (the EMF+ part).
diff --git a/cppu/README.md b/cppu/README.md
index 066170cd7840..3249d15e638e 100644
--- a/cppu/README.md
+++ b/cppu/README.md
@@ -1,4 +1,8 @@
-Type definitions/implementations for the core of UNO. The exported API is in C.
+# Binary UNO Runtime
 
-See also:
-[http://wiki.openoffice.org/wiki/Uno/Binary/Modules/CPPU]
+CPPU stands for C++ UNO and it contains type definitions / implementations for the core of UNO. The 
+exported API is in C, and there exists some C++ wrappers.
+
+## See also
+
+<http://wiki.openoffice.org/wiki/Uno/Binary/Modules/CPPU>
diff --git a/cppuhelper/README.md b/cppuhelper/README.md
index 4ea500109762..1da7282a9f07 100644
--- a/cppuhelper/README.md
+++ b/cppuhelper/README.md
@@ -1,4 +1,8 @@
-Helpers for using cppu in C++, e.g. templates for implementing UNO components, bootstrapping stuff. Get UNO up and running.
+# C++ cppu Helpers
 
-See also:
-[http://wiki.openoffice.org/wiki/Uno/Cpp/Modules/CPPUhelper]
+Helpers for using `cppu` in C++, e.g. templates for implementing UNO components, bootstrapping
+stuff. Get UNO up and running.
+
+## See Also
+
+<http://wiki.openoffice.org/wiki/Uno/Cpp/Modules/CPPUhelper>
diff --git a/cpputools/README.md b/cpputools/README.md
index 9652827ca123..e6ab397cffaf 100644
--- a/cpputools/README.md
+++ b/cpputools/README.md
@@ -1 +1,3 @@
-Old way of doing component registration. Nowadays replaced by another stand-alone UI and tools called UNO package. 
+# Old Way of Doing Component Registration
+
+Nowadays replaced by another stand-alone UI and tools called UNO package.
diff --git a/cui/README.md b/cui/README.md
index 9afcf8873e2a..34b30ebef85c 100644
--- a/cui/README.md
+++ b/cui/README.md
@@ -1,8 +1,8 @@
-Common User Interface
+# Common User Interface (cui)
 
-It was moved out from svx in DEV300m68:
+It was moved out from `svx` in DEV300m68:
 
-http://www.mail-archive.com/dev@openoffice.org/msg12925.html
+<http://www.mail-archive.com/dev@openoffice.org/msg12925.html>
 
 It contains dialogs used by more than one application, e.g. paragraph
 properties.
diff --git a/dbaccess/README.md b/dbaccess/README.md
index 555835a00ff0..8bcd4dd25dd8 100644
--- a/dbaccess/README.md
+++ b/dbaccess/README.md
@@ -1,3 +1,5 @@
-Database access tools, for "base" database application
+# Database Access Tools for LibreOffice Base DB Apps
 
-Builds on top of drivers in [[connectivity]].
+Database access tools, for `base` database application
+
+Builds on top of drivers in `connectivity`.
diff --git a/desktop/README.md b/desktop/README.md
index a49f0051ae1f..1474f11e2718 100644
--- a/desktop/README.md
+++ b/desktop/README.md
@@ -1,28 +1,28 @@
-What used to be the desktop in StarOffice 5 - now the binary.
+# LibreOffice Binary
 
+Code for the LibreOffice main binary (`soffice`) resides here. The `soffice_main`
+function for the `soffice` binary can be found here.
 
-Stable Interface
-================
+
+## Stable Interface
 
 Some of the artifacts built here are part of a LibreOffice installation set's
 stable interface, which (programmatic) clients can depend on.  Among them are:
 
-soffice
-=======
+### soffice
 
-In the "program" directory ("program/" on Linux and Windows, "Contents/MacOS/"
+In the `program` directory (`program/` on Linux and Windows, `Contents/MacOS/`
 on macOS).
 
-unoinfo
-=======
+### unoinfo
 
-In the "program" directory ("program/" on Linux and Windows, "Contents/MacOS/"
+In the `program` directory (`program/` on Linux and Windows, `Contents/MacOS/`
 on macOS).
 
-When called with a sole argument of "c++", it prints to stdout an absolute
+When called with a sole argument of `c++`, it prints to stdout an absolute
 pathname denoting the directory where the public URE libraries are found.
 
-When called with a sole argument of "java", it prints to stdout a marker
+When called with a sole argument of `java`, it prints to stdout a marker
 character (either an ASCII '0' or '1') followed by a sequence of zero or more
 absolute pathnames denoting jars or directories that need to be included in a
 class loader's search locations.
@@ -33,4 +33,9 @@ other by NUL bytes.
 
 If the marker character is '1' (on Windows), the pathnames are encoded as
 UTF-16-LE two-byte code units, and any two pathnames in the sequence are
-separated from each other by two-byte NUL code units.
+separated from each other by two-byte `NUL` code units.
+
+## Other Binaries
+
+### oosplash
+Splash screen for the LibreOffice `soffice` binary.
diff --git a/distro-configs/README.md b/distro-configs/README.md
index 66a6e324d48a..7ae0450bfa31 100644
--- a/distro-configs/README.md
+++ b/distro-configs/README.md
@@ -1,28 +1,28 @@
-Pre-canned distribution configurations
+# Pre-canned Distribution Configurations
 
 These files are supposed to correspond to the options used when
 creating the Document Foundation (or other "canonical") builds of
 LibreOffice for various platforms. They are *not* supposed to
 represent the "most useful" options for developers in general. On the
-contrary, the intent is that just running ./autogen.sh without any
+contrary, the intent is that just running `./autogen.sh` without any
 options at all should produce a buildable configuration for developers
 with interest in working on the most commonly used parts of the code.
 
-See [[https://wiki.documentfoundation.org/Development/ReleaseBuilds]] for how
-TDF builds make use of these switches.  (Especially, since --with-package-format
-now triggers whether or not installation sets are built, all the relevant *.conf
-files specify it, except for LibreOfficeLinux.conf, where the TDF build
-instructions pass an explicit --with-package-format="rpm deb" in addition to
---with-distro=LibreOfficeLinux.)
+See <https://wiki.documentfoundation.org/Development/ReleaseBuilds> for how
+TDF builds make use of these switches.  (Especially, since `--with-package-format`
+now triggers whether or not installation sets are built, all the relevant `*.conf`
+files specify it, except for `LibreOfficeLinux.conf`, where the TDF build
+instructions pass an explicit `--with-package-format="rpm deb"` in addition to
+`--with-distro=LibreOfficeLinux`.)
 
 (Possibly the above is a misunderstanding, or maybe there never even
 has been any clear consensus what situations these files actually are
 intended for.)
 
 The files contain sets of configuration parameters, and can be passed
-on the autogen.sh command line thus:
+on the `autogen.sh` command line thus:
 
-./autogen.sh --with-distro=LibreOfficeFoo
+    ./autogen.sh --with-distro=LibreOfficeFoo
 
 Contrary to the above, in the Android case the amount of parameters
 you just must use is so large, that for convenience it is always
diff --git a/drawinglayer/README.md b/drawinglayer/README.md
index b530ba6fedac..38bdc2197c70 100644
--- a/drawinglayer/README.md
+++ b/drawinglayer/README.md
@@ -1,6 +1,8 @@
+# Drawing API
+
 Drawing API that can specify what to draw via a kind of display list.
 
-Example of the DrawingLayer use is eg. in svx/source/xoutdev/xtabhtch.cxx:121.
+Example of the DrawingLayer use is eg. in `svx/source/xoutdev/xtabhtch.cxx:121`.
 A stripped down version with extended comments:
 
      // Create a hatch primitive (here a rectangle that will be filled with
@@ -39,7 +41,7 @@ A stripped down version with extended comments:
      // it in the widget.
      aRetval = aVirtualDevice.GetBitmap(Point(0, 0), aVirtualDevice.GetOutputSizePixel());
 
-== DrawingLayer glossary ==
+## DrawingLayer Glossary
 
 Primitives - classes that represent what should be drawn.  It holds the data
 what to draw, but does not contain any kind of the rendering.  Some of the
@@ -49,31 +51,31 @@ primitives.
 
 Decomposition - a way how to break down the more complicated primitives into
 the basic primitives, and represent them via them; this logically makes the
-plain Primitive2DSequence display list a hierarchy.
-Eg. PolygonMarkerPrimitive2D can be decomposed to 2 hairlines
-PolyPolygonHairlinePrimitive2D's, each with different color.
+plain `Primitive2DSequence` display list a hierarchy.
+Eg. `PolygonMarkerPrimitive2D` can be decomposed to 2 hairlines
+`PolyPolygonHairlinePrimitive2D`'s, each with different color.
 
 Processor - a class that goes through the hierarchy of the Primitives, and
-renders it some way.  Various processors, like VclPixelProcessor2D (renders to
-the screen), VclMetafileProcessor2D (renders to the VCL metafile, eg. for
+renders it some way.  Various processors, like `VclPixelProcessor2D` (renders to
+the screen), `VclMetafileProcessor2D` (renders to the VCL metafile, eg. for
 printing), etc.
 
-== How to Implement a new Primitive ("something new to draw") ==
+## How to Implement a New Primitive ("Something New to Draw")
 
-* Create an ancestor of BasePrimitive2D
+* Create an ancestor of `BasePrimitive2D`
   (or of its ancestor if it fits the purpose better)
 
-  * Assign it an ID [in drawinglayer_primitivetypes2d.hxx]
+  * Assign it an ID [in `drawinglayer_primitivetypes2d.hxx`]
 
   * Implement its decomposition
-    [virtual Primitive2DSequence create2DDecomposition(...)]
+    [`virtual Primitive2DSequence create2DDecomposition(...)`]
 
 * Extend the (various) processor(s)
   If you need more than relying on just the decomposition
 
-== Where is DrawingLayer used ==
+## Where is DrawingLayer Used
 
-* SdrObject(s) (rectangles, Circles, predefined shapes etc.)
+* `SdrObject`(s) (rectangles, Circles, predefined shapes etc.)
 
 * Selections
 
diff --git a/editeng/README.md b/editeng/README.md
index 6eab9abaee4f..2407c073520e 100644
--- a/editeng/README.md
+++ b/editeng/README.md
@@ -1,12 +1,14 @@
-Edit engine.
+# Edit Engine
+
+In OpenOffice.org build DEV300m72 this module was split off from `svx` but it
+has no dependencies on `svx` (nor on `sfx2`) while in turn `svx` depends on editeng
 
-In OO.o build DEV300m72 this module was split off from svx but it
-has no dependencies on [[svx]] (nor on [[sfx2]]) while in turn svx depends on editeng
 Read more in the mailing list post:
-[http://www.mail-archive.com/dev@openoffice.org/msg13237.html]
+<http://www.mail-archive.com/dev@openoffice.org/msg13237.html>
+
+If you build LibreOffice with `dbgutil`, you have some extended debug keys:
 
-If you build LibreOffice with dbgutil, you have some extended debug keys:
-Ctrl+Alt+F1 - draws the paragraph rectangles in different colors
-Ctrl+Alt+F11 - toggles dumping the edit engine state to the
+- Ctrl+Alt+F1 - draws the paragraph rectangles in different colors
+- Ctrl+Alt+F11 - toggles dumping the edit engine state to the
                "editenginedump.log" on draw
-Ctrl+Alt+F12 - dumps the current edit engine state to "editenginedump.log"
+- Ctrl+Alt+F12 - dumps the current edit engine state to "editenginedump.log"
diff --git a/embeddedobj/README.md b/embeddedobj/README.md
index 3fe564abd6b3..247ef1fda083 100644
--- a/embeddedobj/README.md
+++ b/embeddedobj/README.md
@@ -1 +1,3 @@
-Code for embedding objects into LibreOffice (reverse of embedserv module).
+# Embedding Objects Into LibreOffice
+
+Code for embedding objects into LibreOffice (reverse of `embedserv` module).
diff --git a/embedserv/README.md b/embedserv/README.md
index fdc64c389ce8..cbdaebed110d 100644
--- a/embedserv/README.md
+++ b/embedserv/README.md
@@ -1 +1,3 @@
+# LibreOffice Embeddable Objects
+
 To embed LibreOffice via OLE2.
diff --git a/emfio/README.md b/emfio/README.md
index 0b071d95c1e8..d659731650fd 100644
--- a/emfio/README.md
+++ b/emfio/README.md
@@ -1 +1,5 @@
-It contains emfio/source/reader which is used for "Insert->Picture->From File".
+# WMF/EMF Reader
+
+It contains emfio/source/reader which is used for "Insert -> Picture -> From
+ File". It is used to read WMF (Windows Metafile), EMF (Enhanced Metafiles) and
+also MF+ enhanced EMF files.
diff --git a/eventattacher/README.md b/eventattacher/README.md
index ecfdcf75ace5..addd1d7177b0 100644
--- a/eventattacher/README.md
+++ b/eventattacher/README.md
@@ -1 +1,8 @@
-How [[basic]] handles events
+# Event Attacher
+
+This is how StarBasic handles events.
+
+## See Also
+
+- <https://wiki.openoffice.org/wiki/Documentation/DevGuide/Forms/Programmatic_Assignment_of_Scripts_to_Events>
+- <https://wiki.openoffice.org/wiki/Documentation/DevGuide/Forms/Scripting_and_Events>
diff --git a/extensions/README.md b/extensions/README.md
index 38df77e37fba..94cf2acbebd6 100644
--- a/extensions/README.md
+++ b/extensions/README.md
@@ -1,45 +1,51 @@
-This module contains a grab-bag of unrelated misc. libraries, *none* of which is an extension.
+# Miscellaneous Modules
 
-== Application online update checking ==
+This module contains a grab-bag of unrelated miscellaneous libraries, *none* of
+which is an extension.
 
-When we start LO, first InitUpdateCheckJobThread is created, via
-UpdateCheckJob::execute() (from extensions/source/update/check/updatecheckjob.cxx),
-as a reaction to a "onFirstVisibleTask" event. It waits 25 seconds (so that it
+## Application Online Update Checking
+
+When we start LO, first `InitUpdateCheckJobThread` is created, via
+`UpdateCheckJob::execute()` (from `extensions/source/update/check/updatecheckjob.cxx`),
+as a reaction to a `onFirstVisibleTask` event. It waits 25 seconds (so that it
 does not interfere with the startup itself), and then calls
-UpdateCheck::initialize() (from extensions/source/update/check/updatecheck.cxx).
+`UpdateCheck::initialize()` (from `extensions/source/update/check/updatecheck.cxx`).
 
-This creates one more thread, UpdateCheckThread, that regularly checks whether
+This creates one more thread, `UpdateCheckThread`, that regularly checks whether
 we have reached the time when we should ask for the update.  If yes, asks for
 that, and shows the download button in the menu (if the new update is
 available).
 
-== OLE automation bridge ==
+## OLE Automation Bridge
 
 A bridge between "OLE automation" and UNO, so you can use UNO services
 from JScript, VBScript, etc.
 
-https://www.openoffice.org/udk/common/man/spec/ole_bridge.html
+<https://www.openoffice.org/udk/common/man/spec/ole_bridge.html>
 
-See udkapi/com/sun/star/bridge/oleautomation/ApplicationRegistration.idl
+See `udkapi/com/sun/star/bridge/oleautomation/ApplicationRegistration.idl`
 
-This is initialized in Desktop::Main() in Desktop::OpenClients_Impl()
-by creating the service "com.sun.star.bridge.OleApplicationRegistration",
-which is implemented by OleServer_Impl.
+This is initialized in `Desktop::Main()` in `Desktop::OpenClients_Impl()`
+by creating the service `com.sun.star.bridge.OleApplicationRegistration`,
+which is implemented by `OleServer_Impl`.
 
-See extensions/source/ole/
+See `extensions/source/ole/`
 
-== ActiveX control ==
+## ActiveX Control
 
 This allows embedding LO into a Win32 application as an ActiveX control.
-See extensions/source/activex/
 
-== Spotlight provider ==
+See `extensions/source/activex/`
+
+## Spotlight Provider
 
 On macOS, this allows indexing ODF documents with Spotlight.
-See extensions/source/macosx/spotlight/
 
-== Scanner support ==
+See `extensions/source/macosx/spotlight/`
+
+## Scanner Support
 
 You can scan from LibreOffice, using platform specific backends like TWAIN/SANE.
-See extensions/source/scanner/
+
+See `extensions/source/scanner/`
 
diff --git a/external/README.md b/external/README.md
index 1f245df45bd1..29a2c9098a4e 100644
--- a/external/README.md
+++ b/external/README.md
@@ -1 +1,3 @@
+# External Projects
+
 External projects bundled with LibreOffice.
diff --git a/extras/README.md b/extras/README.md
index 8644d990d5d9..84355c86d2f2 100644
--- a/extras/README.md
+++ b/extras/README.md
@@ -1,61 +1,63 @@
+# Extra Modules
+
 Contains templates, clipart galleries, palettes, symbol font, autocorrections, autotexts etc.
 
-How-to add a new gallery:
-	+ create a directory extras/source/gallery/foo/
-	+ create a .str file extras/source/gallery/foo/foo.str
-	+ add a [foo] section to extras/source/gallery/share/gallery_names.ulf
-	+ add a Gallery_foo.mk at the top-level (and mention in Module_extra.mk)
-	+ add a new GALLERY_FILELIST statement in scp2/
++ How-to add a new gallery:
+	+ create a directory `extras/source/gallery/foo/`
+	+ create a `.str` file `extras/source/gallery/foo/foo.str`
+	+ add a `foo` section to `extras/source/gallery/share/gallery_names.ulf`
+	+ add a `Gallery_foo.mk` at the top-level (and mention in `Module_extra.mk`)
+	+ add a new `GALLERY_FILELIST` statement in `scp2/`
 
-How-to add a new autotext category
-	+ create a directory extras/source/autotext/lang/xx/foo/ where xx is your lang code. xx must exactly fit with an UI lang code.
-	+ unzip your foo.bau autotext file in this directory (including an empty mimetype file)
-	+ add xx/foo.bau in extras/AllLangPackage_autotextshare.mk
-	+ in extras/CustomTarget_autotextshare.mk:
-		+ add xx/foo in extras_AUTOTEXTSHARE_AUTOTEXTS
-		+ add all files contained in foo.bau (except mimetype) in extras_AUTOTEXTSHARE_XMLFILES
-		+ if foo.bau contains files with other extension than .xml, .rdf, .svm and .png
-			+ add a CPY call at the end of the file
++ How-to add a new autotext category
+	+ create a directory `extras/source/autotext/lang/xx/foo/` where `xx` is your lang code. `xx` must exactly fit with an UI lang code.
+	+ unzip your `foo.bau` autotext file in this directory (including an empty mimetype file)
+	+ add `xx/foo.bau` in `extras/AllLangPackage_autotextshare.mk`
+	+ in `extras/CustomTarget_autotextshare.mk`:
+		+ add `xx/foo` in `extras_AUTOTEXTSHARE_AUTOTEXTS`
+		+ add all files contained in `foo.bau` (except mimetype) in `extras_AUTOTEXTSHARE_XMLFILES`
+		+ if `foo.bau` contains files with other extension than `.xml`, `.rdf`, `.svm` and `.png`
+			+ add a `CPY` call at the end of the file
 
-How-to add a new autotext to an existing category
-	+ create a directory extras/source/autotext/lang/xx/standard/FOO/ to add it in category standard of lang xx
-	+ add files of the autotext (at least FOO.xml for an unformatted autotext)
-	+ add autotext name in extras/source/autotext/lang/xx/standard/BlockList.xml
-	+ add all files of autotext in extras/source/autotext/lang/xx/standard/META-INF/manifest.xml
-	+ in extras/CustomTarget_autotextshare.mk:
-		+ add all files of autotext in extras_AUTOTEXTSHARE_XMLFILES
-		+ if some files have different extension from .xml, .rdf, .svm and .png
-			+ add a CPY call at the end of the file
++ How-to add a new autotext to an existing category
+	+ create a directory `extras/source/autotext/lang/xx/standard/FOO/` to add it in category standard of lang `xx`
+	+ add files of the autotext (at least `FOO.xml` for an unformatted autotext)
+	+ add autotext name in `extras/source/autotext/lang/xx/standard/BlockList.xml`
+	+ add all files of autotext in `extras/source/autotext/lang/xx/standard/META-INF/manifest.xml`
+	+ in `extras/CustomTarget_autotextshare.mk`:
+		+ add all files of autotext in `extras_AUTOTEXTSHARE_XMLFILES`
+		+ if some files have different extension from `.xml`, `.rdf`, `.svm` and `.png`
+			+ add a `CPY` call at the end of the file
 
-How-to add a new Impress template
-	+ clean-up template file as indicated on wiki https://wiki.documentfoundation.org/Documentation/HowTo/Impress/Make_template_language_independent
-	+ add <dc:title>Foo</dc:title> in meta.xml to make presentation name translatable
-	+ unzip Foo.otp file in extras/source/templates/presnt/Foo (no space allowed in any file names)
-	+ add "Foo.otp" in Package_tplpresnt.mk
-	+ in CustomTarget_tplpresnt.mk:
-		+ add "Foo /" in extras_TEMPLATES_PRESENTATIONS
-		+ add files names contained in Foo.otp (except mimetype) in extras_PRESENTATIONS_XMLFILES
-		+ if Foo.otp contains files with other extension than .xml, .svm, .svg, .png and .jpg
-			+ add a CPY call at the end of file
++ How-to add a new Impress template
+	+ clean-up template file as indicated on wiki <https://wiki.documentfoundation.org/Documentation/HowTo/Impress/Make_template_language_independent>
+	+ add `<dc:title>Foo</dc:title>` in `meta.xml` to make presentation name translatable
+	+ unzip `Foo.otp` file in `extras/source/templates/presnt/Foo` (no space allowed in any file names)
+	+ add `Foo.otp` in `Package_tplpresnt.mk`
+	+ in `CustomTarget_tplpresnt.mk`:
+		+ add `Foo /` in `extras_TEMPLATES_PRESENTATIONS`
+		+ add files names contained in `Foo.otp` (except mimetype) in `extras_PRESENTATIONS_XMLFILES`
+		+ if `Foo.otp` contains files with other extension than `.xml`, `.svm`, `.svg`, `.png` and `.jpg`
+			+ add a `CPY` call at the end of file
 
-How-to add a new Writer template
-	+ clean-up template file as much as possible, and choose a template category <Category>
-	+ unzip Foo.ott in extras/source/templates/<Category>/Foo (no space allowed in any file names)
-	+ add Foo.ott in Package_<tplCategory>.mk
-	+ in CustomTarget_<tplCategory>.mk:
-		+ add Foo / in extras_TEMPLATES_<CATEGORY>
-		+ add files names contained in Foo.otp (except mimetype) in extras_<CATEGORY>_XMLFILES
-		+ if Foo.ott contains files with other extension than .xml, rdf, .svm, .svg, .png and .jpg
-			+ add a CPY call at the end of file
++ How-to add a new Writer template
+	+ clean-up template file as much as possible, and choose a template category `<Category>`
+	+ unzip `Foo.ott` in `extras/source/templates/<Category>/Foo` (no space allowed in any file names)
+	+ add `Foo.ott` in `Package_<tplCategory>.mk`
+	+ in `CustomTarget_<tplCategory>.mk`:
+		+ add `Foo /` in `extras_TEMPLATES_<CATEGORY>`
+		+ add files names contained in `Foo.otp` (except mimetype) in `extras_<CATEGORY>_XMLFILES`
+		+ if `Foo.ott` contains files with other extension than `.xml`, `.rdf`, `.svm`, `.svg`, `.png` and `.jpg`
+			+ add a `CPY` call at the end of file
 
-How-to add a new template category
-	+ create a directory extras/source/templates/foo/
-	+ unzip your foo0.ott template files in extras/source/templates/foo/foo0
-	+ add Package_tplfoo and CustomTarget_tplfoo in Module_extras.mk
-	+ use other category Package_tplcategory.mk to create Package_tplfoo.mk
-	+ use other category CustomTarget_tplcategory.mk to create CustomTarget_tplfoo.mk
-		+ replace all category by foo and CATEGORY by FOO
-		+ add all files contained in foo0.ott (except mimetype) in extras_FOO_XMLFILES
-		+ if foo0.ott contains files with other extension than .xml, .rdf, .svm, .svg, .png and .jpg
-			+ add a CPY call at the end of the file
++ How-to add a new template category
+	+ create a directory `extras/source/templates/foo/`
+	+ unzip your foo0.ott template files in `extras/source/templates/foo/foo0`
+	+ add `Package_tplfoo` and `CustomTarget_tplfoo` in `Module_extras.mk`
+	+ use other category `Package_tplcategory.mk` to create `Package_tplfoo.mk`
+	+ use other category `CustomTarget_tplcategory.mk` to create `CustomTarget_tplfoo.mk`
+		+ replace all category by foo and `CATEGORY` by `FOO`
+		+ add all files contained in `foo0.ott` (except mimetype) in `extras_FOO_XMLFILES`
+		+ if `foo0.ott` contains files with other extension than `.xml`, `.rdf`, `.svm`, `.svg`, `.png` and `.jpg`
+			+ add a `CPY` call at the end of the file
 		+ optionally, replace extension ott (4 places)
diff --git a/filter/README.md b/filter/README.md
index 78d469a6859f..19caeb73eaf9 100644
--- a/filter/README.md
+++ b/filter/README.md
@@ -1,24 +1,24 @@
+# LibreOffice Filters
+
 Filter registration and some simple filters (also descriptions).
 
 Desperate splitting of code into small shared libraries for historical
 reasons presumably (OS/2 and Windows 3.x). The libraries produced from
-the code in each subdirectory of filter/source/graphicfilter are
+the code in each subdirectory of `filter/source/graphicfilter` are
 graphic format import or export filters. But they don't have uniform
-API. Some have either a GraphicImport or GraphicExport entry point,
+API. Some have either a `GraphicImport` or `GraphicExport` entry point,
 and are loaded and used in a uniform fashion from code in
-svtools/source/filter/filter.cxx. Others have different API and are
-loaded from other places. For instance "icgm" has ImportCGM, and is
-loaded and used by sd/source/filter/cgm/sdcgmfilter.cxx (!).
-Svgreader is used for "File->Open" and then to choose the svg file.
-For "Insert->Picture->From File", see svgio/source/svgreader directory.
+`svtools/source/filter/filter.cxx`. Others have different API and are
+loaded from other places. For instance `icgm` has `ImportCGM`, and is
+loaded and used by `sd/source/filter/cgm/sdcgmfilter.cxx` (!).
+Svgreader is used for "File -> Open" and then to choose the svg file.
+For "Insert -> Picture -> From File", see `svgio/source/svgreader` directory.
 
-====================
-filter configuration
-====================
+## Filter Configuration
 
 The filter configuration consists of two parts, the type definition in
-filter/source/config/fragments/types/ and the actual filter definition
-in filter/source/config/fragments/filters/.
+`filter/source/config/fragments/types/` and the actual filter definition
+in `filter/source/config/fragments/filters/`.
 
 Each file type e.g. text file should be represented by exactly one
 type definition. This type can then be referenced by several different
diff --git a/forms/README.md b/forms/README.md
index 248da82fe493..53a20e14b8b8 100644
--- a/forms/README.md
+++ b/forms/README.md
@@ -1 +1,3 @@
-Embedded forms control and pieces (design forms in documents, fields and database driven).
+# Embedded Forms Control and Pieces
+
+design forms in documents, fields and database driven.
diff --git a/formula/README.md b/formula/README.md
index ab2c28a08c42..0704b107e895 100644
--- a/formula/README.md
+++ b/formula/README.md
@@ -1,5 +1,7 @@
-Contains parts of the formula parser used outside Calc code that has
+# Formula Helper Code
+
+Contains parts of the formula parser used outside LibreOffice Calc code that has
 been pulled out from Calc's formula parser code.
 
-Also contains some functions that are needed by code in both sc and
-scaddins. Located here just for convenience. So sue me.
+Also contains some functions that are needed by code in both `sc` and
+`scaddins`. Located here just for convenience. So sue me.
diff --git a/fpicker/README.md b/fpicker/README.md
index ea21095c1601..6f4bae6c4bac 100644
--- a/fpicker/README.md
+++ b/fpicker/README.md
@@ -1 +1,3 @@
+# Native File Picker
+
 Native file pickers for macOS and Windows (file open dialog).
diff --git a/framework/README.md b/framework/README.md
index 2efd636a8022..74711a9a6961 100644
--- a/framework/README.md
+++ b/framework/README.md
@@ -1,4 +1,7 @@
+# UNO Framework
+
 Toolbars, menus, UNO stuff, including accelerators and interaction, etc.
 
-See also:
-http://wiki.openoffice.org/wiki/Framework
+## See Also
+
+<http://wiki.openoffice.org/wiki/Framework>
diff --git a/hwpfilter/README.md b/hwpfilter/README.md
index 293e6a1bdff7..f59184bc9788 100644
--- a/hwpfilter/README.md
+++ b/hwpfilter/README.md
@@ -1,5 +1,7 @@
+# Filters for Korean (Hangul) Popular Word Processor Formats
+
 Filter for a word processor file format popular in Korea (Hangul Word Processor).
 
 Unfortunately apparently there is a newer version of the file format
 in use nowadays and the code doesn't handle that correctly but
-silently corrupts the input. See fdo#70097.
+silently corrupts the input. See tdf#70097.
diff --git a/i18nlangtag/README.md b/i18nlangtag/README.md
index dcdb7be23144..8bb608c24e62 100644
--- a/i18nlangtag/README.md
+++ b/i18nlangtag/README.md
@@ -1,141 +1,143 @@
+# Language Tags
+
 Code for language tags, LanguageTag wrapper for liblangtag and converter between BCP47 language tags, Locale(Language,Country,Variant) and MS-LangIDs.
 
 Basic functionality used by almost every other module including comphelper, so even don't use that string helpers in this code to not create circular dependencies. Stick with sal and rtl!
 
 
 
-If Microsoft introduced a new LCID for a locale that we previously defined as LANGUAGE_USER_..., for example LANGUAGE_CATALAN_VALENCIAN that we had as LANGUAGE_USER_CATALAN_VALENCIAN:
-
-* include/i18nlangtag/lang.h
-** add the new LANGUAGE_... value as defined by MS, here LANGUAGE_CATALAN_VALENCIAN
-** rename the LANGUAGE_USER_... definition to LANGUAGE_OBSOLETE_USER_..., here LANGUAGE_USER_CATALAN_VALENCIAN to LANGUAGE_OBSOLETE_USER_CATALAN_VALENCIAN
-** add a  #define LANGUAGE_USER_CATALAN_VALENCIAN LANGUAGE_CATALAN_VALENCIAN
-*** so svtools/source/misc/langtab.src (where the defined name is an identifier) and other places using LANGUAGE_USER_CATALAN_VALENCIAN do not need to be changed
+If Microsoft introduced a new LCID for a locale that we previously defined as `LANGUAGE_USER_...`, for example `LANGUAGE_CATALAN_VALENCIAN` that we had as `LANGUAGE_USER_CATALAN_VALENCIAN`:
 
-* i18nlangtag/source/isolang/isolang.cxx
-** insert a mapping with LANGUAGE_CATALAN_VALENCIAN before (!) the existing LANGUAGE_USER_CATALAN_VALENCIAN
-** rename the LANGUAGE_USER_CATALAN_VALENCIAN to LANGUAGE_OBSOLETE_USER_CATALAN_VALENCIAN
-*** so converting the tag maps to the new LANGUAGE_CATALAN_VALENCIAN and converting the old LANGUAGE_OBSOLETE_USER_CATALAN_VALENCIAN still maps to the tag.
+* `include/i18nlangtag/lang.h`
+    * add the new `LANGUAGE_...` value as defined by MS, here `LANGUAGE_CATALAN_VALENCIAN`
+    * rename the `LANGUAGE_USER_...` definition to `LANGUAGE_OBSOLETE_USER_...`, here `LANGUAGE_USER_CATALAN_VALENCIAN` to `LANGUAGE_OBSOLETE_USER_CATALAN_VALENCIAN`
+    * add a `#define LANGUAGE_USER_CATALAN_VALENCIAN LANGUAGE_CATALAN_VALENCIAN`
+        * so `svtools/source/misc/langtab.src` (where the defined name is an identifier) and other places using `LANGUAGE_USER_CATALAN_VALENCIAN` do not need to be changed
 
-* i18nlangtag/source/isolang/mslangid.cxx
-** add an entry to MsLangId::getReplacementForObsoleteLanguage() to convert LANGUAGE_OBSOLETE_USER_CATALAN_VALENCIAN to LANGUAGE_CATALAN_VALENCIAN
+* `i18nlangtag/source/isolang/isolang.cxx`
+    * insert a mapping with `LANGUAGE_CATALAN_VALENCIAN` before (!) the existing `LANGUAGE_USER_CATALAN_VALENCIAN`
+    * rename the `LANGUAGE_USER_CATALAN_VALENCIAN` to `LANGUAGE_OBSOLETE_USER_CATALAN_VALENCIAN`
+        * so converting the tag maps to the new `LANGUAGE_CATALAN_VALENCIAN` and converting the old `LANGUAGE_OBSOLETE_USER_CATALAN_VALENCIAN` still maps to the tag.
 
+* `i18nlangtag/source/isolang/mslangid.cxx`
+    * add an entry to `MsLangId::getReplacementForObsoleteLanguage()` to convert `LANGUAGE_OBSOLETE_USER_CATALAN_VALENCIAN` to `LANGUAGE_CATALAN_VALENCIAN`
 
 
-When changing a (translation's) language tag (for example, 'ca-XV' to 'ca-valencia' or 'sh' to 'sr-Latn'):
+When changing a (translation's) language tag (for example, `ca-XV` to `ca-valencia` or `sh` to `sr-Latn`):
 
-* solenv/inc/langlist.mk
-** replace the tag and sort alphabetically
+* `solenv/inc/langlist.mk`
+    * replace the tag and sort alphabetically
 
-* in translations/source do  git mv old-tag new-tag
-** note that translations is a git submodule so https://wiki.documentfoundation.org/Development/Submodules applies
+* in `translations/source` do  `git mv old-tag new-tag`
+    * note that translations is a git submodule so <https://wiki.documentfoundation.org/Development/Submodules applies>
 
-* i18nlangtag/source/isolang/isolang.cxx
-** maintain the old tag's mapping entry in aImplIsoLangEntries to be able to read existing documents using that code
-** add the new tag's mapping to aImplBcp47CountryEntries or aImplIsoLangScriptEntries
-** change mnOverride from 0 to kSAME in aImplIsoLangScriptEntries or aImplIsoLangEntries
+* `i18nlangtag/source/isolang/isolang.cxx`
+    * maintain the old tag's mapping entry in `aImplIsoLangEntries` to be able to read existing documents using that code
+    * add the new tag's mapping to `aImplBcp47CountryEntries` or `aImplIsoLangScriptEntries`
+    * change `mnOverride` from 0 to `kSAME` in `aImplIsoLangScriptEntries` or `aImplIsoLangEntries`
 
-* i18nlangtag/source/languagetag/languagetag.cxx
-** add the new tag's fallback strings to the fallback of the old tag in LanguageTag::getFallbackStrings()
+* `i18nlangtag/source/languagetag/languagetag.cxx`
+    * add the new tag's fallback strings to the fallback of the old tag in `LanguageTag::getFallbackStrings()`
 
-* i18nlangtag/qa/cppunit/test_languagetag.cxx
-** add a unit test for the new tag and old tag
+* `i18nlangtag/qa/cppunit/test_languagetag.cxx`
+    * add a unit test for the new tag and old tag
 
-* l10ntools/source/ulfconv/msi-encodinglist.txt
-** replace the tag and sort alphabetically
+* `l10ntools/source/ulfconv/msi-encodinglist.txt`
+    * replace the tag and sort alphabetically
 
-* setup_native/source/packinfo/spellchecker_selection.txt
-** replace the tag and sort alphabetically
+* `setup_native/source/packinfo/spellchecker_selection.txt`
+    * replace the tag and sort alphabetically
 
 If locale data exists:
 
-* i18npool/source/localedata/data/*.xml     for example i18npool/source/localedata/data/sh_RS.xml 
-** in the <LC_INFO> element
-*** change <LangID> to 'qlt'
-*** after the <Country> element add a <Variant> element with the new full BCP 47 tag, for example 'sr-Latn-RS'
-**** note that <Variant> has no <VariantID> or <DefaultName> child elements
-** if any of the other *.xml files reference the locale in a ref="..." attribute, change those too; note that these references use '_' underscore instead of '-' hyphen just like the file names do
-** rename sh_RS.xml to sr_Latn_RS.xml,  git mv sh_RS.xml sr_Latn_RS.xml
+* `i18npool/source/localedata/data/*.xml` for example `i18npool/source/localedata/data/sh_RS.xml`
+    * in the `<LC_INFO>` element
+        * change `<LangID>` to `qlt`
+        * after the `<Country>` element add a `<Variant>` element with the new full BCP 47 tag, for example `sr-Latn-RS`
+            * note that `<Variant>` has no `<VariantID>` or `<DefaultName>` child elements
+    * if any of the other `*.xml` files reference the locale in a `ref="..."` attribute, change those too; note that these references use '`_`' underscore instead of '`-`' hyphen just like the file names do
+    * rename `sh_RS.xml` to `sr_Latn_RS.xml`, `git mv sh_RS.xml sr_Latn_RS.xml`
 
-* i18npool/source/localedata/localedata.cxx
-** in aLibTable change the entry from old "sh_RS" to new "sr_Latn_RS", do not sort the table
+* `i18npool/source/localedata/localedata.cxx`
+    * in `aLibTable` change the entry from old `sh_RS` to new `sr_Latn_RS`, do not sort the table
 
-* i18npool/Library_localedata_*.mk      for example i18npool/Library_localedata_euro.mk
-** change the entry for the changed .xml file, for example CustomTarget/i18npool/localedata/localedata_sh_RS to CustomTarget/i18npool/localedata/localedata_sr_Latn_RS, sort the list alphabetically
+* `i18npool/Library_localedata_*.mk`     for example `i18npool/Library_localedata_euro.mk`
+    * change the entry for the changed `.xml` file, for example `CustomTarget/i18npool/localedata/localedata_sh_RS` to `CustomTarget/i18npool/localedata/localedata_sr_Latn_RS`, sort the list alphabetically
 
 If dictionary exists:
 
-* dictionaries/*/dictionaries.xcu       for example dictionaries/sr/dictionaries.xcu
-** change the affected <node oor:name="..."> elements to something corresponding, for example <node oor:name="HunSpellDic_sh" ...> to <node oor:name="HunSpellDic_sr_Latn" ...>
-** in the "Locales" properties change the <value> element, for example <value>sh-RS</value> to <value>sr-Latn-RS</value>
-
-If dictionary is to be renamed, for example ku-TR to kmr-Latn:
-
-* dictionaries/*/*                      for example dictionaries/ku_TR/*
-** if appropriate rename *.dic and *.aff files, for example ku_TR.dic to kmr_Latn.dic and ku_TR.aff to kmr_Latn.aff
-* dictionaries/Dictionary_*.mk          for example dictionaries/Dictionary_ku_TR.mk
-** rename file, for example to Dictionary_kmr_Latn.mk
-** change all locale dependent file names and target, for example *ku_TR* to *kmr_Latn* AND ku-TR to kmr-Latn; note '-' and '_' separators, both are used!
-* dictionaries/Module_dictionaries.mk
-** change Dictionary_* (Dictionary_ku-TR to Dictionary_kmr-Latn) and sort alphabetically
-* scp2/source/ooo/common_brand.scp
-** DosName = "dict-ku-TR";
-*** change to "dict-kmr-Latn"
-* scp2/source/ooo/file_ooo.scp
-** File gid_File_Extension_Dictionary_Ku_Tr
-*** change to gid_File_Extension_Dictionary_Kmr_Latn
-** Name = "Dictionary/dict-ku-TR.filelist";
-*** change to "Dictionary/dict-kmr-Latn.filelist"
-* scp2/source/ooo/module_ooo.scp
-** Module gid_Module_Root_Extension_Dictionary_Ku_Tr
-*** change to gid_Module_Root_Extension_Dictionary_Kmr_Latn
-** MOD_NAME_DESC ( MODULE_EXTENSION_DICTIONARY_KU_TR );
-*** change to MODULE_EXTENSION_DICTIONARY_KMR_LATN
-** Files = (gid_File_Extension_Dictionary_Ku_Tr);
-*** change to gid_File_Extension_Dictionary_Kmr_Latn
-** Spellcheckerlanguage = "ku-TR";
-*** change to "kmr-Latn"
-* scp2/source/ooo/module_ooo.ulf
-** [STR_NAME_MODULE_EXTENSION_DICTIONARY_KU_TR]
-*** change to STR_NAME_MODULE_EXTENSION_DICTIONARY_KMR_LATN
-** en-US = "Kurdish (Turkey)"
-*** change to "Kurdish, Northern, Latin script"
-** [STR_DESC_MODULE_EXTENSION_DICTIONARY_KU_TR]
-*** change to STR_DESC_MODULE_EXTENSION_DICTIONARY_KMR_LATN
-** en-US = "Kurdish (Turkey) spelling dictionary"
-*** change to "Kurdish, Northern, Latin script spelling dictionary"
-* setup_native/source/packinfo/packinfo_office.txt
-** module = "gid_Module_Root_Extension_Dictionary_Ku_Tr"
-*** change to "gid_Module_Root_Extension_Dictionary_Kmr_Latn"
-** solarispackagename = "%PACKAGEPREFIX%WITHOUTDOTUNIXPRODUCTNAME%BRANDPACKAGEVERSION-dict-ku-TR"
-*** change to "...-dict-kmr-Latn"
-** packagename = "%UNIXPRODUCTNAME%BRANDPACKAGEVERSION-dict-ku-TR"
-*** change to "...-dict-kmr-Latn"
-** description = "Ku-TR dictionary for %PRODUCTNAME %PRODUCTVERSION"
-*** change to "Kmr-Latn dictionary ..."
-
-If extras exist, for example extras/source/autotext/*:
-
-* extras/Package_autocorr.mk
-** replace acor_* entry, for example acor_sh-RS.dat to acor_sr-Latn-RS.dat, sort alphabetically
-
-* extras/CustomTarget_autocorr.mk
-** in extras_AUTOCORR_LANGS change map entry, for example sh-RS:sh-RS to sr-Latn-RS:sr-Latn-Rs
-** in extras_AUTOCORR_XMLFILES change directory entries, for example sh-RS/acor/DocumentList.xml to sr-Latn-RS/acor/DocumentList.xml
-
-* rename files accordingly, for example in extras/source/autotext/lang/  git mv sh-RS sr-Latn-RS
-
-If helpcontent exists:
-
-* helpcontent2/source/auxiliary/*/*       for example helpcontent2/source/auxiliary/sh/*
-** change Language=..., for example Language=sh to Language=sr-Latn in helpcontent2/source/auxiliary/sh/*.cfg
-** rename helpcontent2/source/auxiliary/sh/  git mv sh sr-Latn
+* `dictionaries/*/dictionaries.xcu`      for example `dictionaries/sr/dictionaries.xcu`
+    * change the affected `<node oor:name="...">` elements to something corresponding, for example `<node oor:name="HunSpellDic_sh" ...>` to `<node oor:name="HunSpellDic_sr_Latn" ...>`
+    * in the `Locales` properties change the `<value>` element, for example `<value>sh-RS</value>` to `<value>sr-Latn-RS</value>`
+
+If dictionary is to be renamed, for example `ku-TR` to `kmr-Latn`:
+
+* `dictionaries/*/*`                     for example `dictionaries/ku_TR/*`
+    * if appropriate rename `*.dic` and `*.aff` files, for example `ku_TR.dic` to `kmr_Latn.dic` and `ku_TR.aff` to `kmr_Latn.aff`
+* `dictionaries/Dictionary_*.mk`         for example `dictionaries/Dictionary_ku_TR.mk`
+    * rename file, for example to `Dictionary_kmr_Latn.mk`
+    * change all locale dependent file names and target, for example `ku_TR` to `kmr_Latn` AND `ku-TR` to `kmr-Latn`; note '`-`' and '`_`' separators, both are used!
+* `dictionaries/Module_dictionaries.mk`
+    * change `Dictionary_*` (`Dictionary_ku-TR` to `Dictionary_kmr-Latn`) and sort alphabetically
+* `scp2/source/ooo/common_brand.scp`
+    * `DosName = "dict-ku-TR";`
+        * change to `"dict-kmr-Latn"`
+* `scp2/source/ooo/file_ooo.scp`
+    * File `gid_File_Extension_Dictionary_Ku_Tr`
+        * change to `gid_File_Extension_Dictionary_Kmr_Latn`
+    * `Name = "Dictionary/dict-ku-TR.filelist";`
+        * change to `"Dictionary/dict-kmr-Latn.filelist"`
+* `scp2/source/ooo/module_ooo.scp`

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list