diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
index ed1a366..ae70ba3 100644
--- a/RELEASE_NOTES.md
+++ b/RELEASE_NOTES.md
@@ -3,6 +3,7 @@
 ## Version 22.12
 
 The minimum build requirements have been increased as follows:
+
 - Either GCC >= 7.4.0 or Clang >= 6.0 is required on Linux
 - On macOS, Xcode 11.3 or later is recommended; older versions may still work but are
   not officially supported
@@ -10,17 +11,21 @@
 - Sphinx 4.0 or later is required to build the manual pages
 
 chunks:
+
 - Avoid excess window decrease in certain conditions (Issue #5202)
 - Use ndn-cxx's `Segmenter` class (Issue #4702)
 
 dissect:
+
 - Recognize several TLV elements that appear in `Certificate` and `SafeBag`
 - Remove support for obsolete TLV types
 
 dissect-wireshark:
+
 - Expose `type`, `len`, and `bin` fields
 
 build system:
+
 - Switch to C++17
 - macOS 12 (Monterey) and 13 (Ventura) running on arm64 are now supported out-of-the-box
   (Issue #5135)
@@ -34,16 +39,19 @@
 `YEAR.MONTH[.PATCH]` (`YY.0M[.MICRO]` in [CalVer](https://calver.org/) notation).
 
 chunks:
+
 - Add `--naming-convention` command-line option (Issue #5109)
 - Increase the default segment size to 8000 bytes
 
 dissect:
+
 - Support `InterestSignature` fields and more types of name components
 - The `Content` field is no longer dissected by default; use the new `--content` option
   to enable it
 - Minor cosmetic improvements to the tool output
 
 dissect-wireshark:
+
 - Remove support for obsolete TLV elements
 - Recognize `ForwardingHint` (Issue #4185)
 - Recognize `ParametersSha256DigestComponent`
@@ -51,18 +59,22 @@
 - Update the TLV type of `IncomingFaceId` (Issue #5185)
 
 peek:
+
 - Replace `--link-file` option with `--fwhint` and adapt to the new `ForwardingHint`
   format (Issues #4207, #5187)
 
 poke:
+
 - Remove deprecated `--force` option; use `--unsolicited` instead
 - Remove deprecated `--identity` and `--digest` options; use `--signing-info` instead
 - Change the short form of `--freshness` to `-f`
 
 pingserver:
+
 - Remove deprecated `-x` alias for the `--freshness` option
 
 build system:
+
 - Upgrade `waf` to version 2.0.23
 
 ## Version 0.7.1
@@ -75,16 +87,19 @@
 ## Version 0.7
 
 chunks:
+
 - Add `--no-version-discovery` option to ndncatchunks (Issue #5021)
 - Improve CUBIC performance on lossy networks (Issue #5036)
 - Switch to ndn-cxx's `RttEstimatorWithStats` class (Issue #4887)
 - Remove previously deprecated options `-d` and `-t` from ndncatchunks
 
 ping:
+
 - Change the short form of ndnpingserver's `--freshness` option to `-f`,
   for consistency with ndnputchunks
 
 peek:
+
 - Add `--app-params`, `--app-params-file`, and `--hop-limit` options
 - The `--link-file` option now expects a raw binary file
 - Print Data name and Nack reason if `--verbose` is specified
@@ -92,6 +107,7 @@
 - Manual page improvements
 
 poke:
+
 - Add `--signing-info` option, replacing `--digest` and `--identity` which are
   now deprecated
 - Add `--verbose` option
@@ -105,6 +121,7 @@
 ## Version 0.6.4
 
 chunks:
+
 - Add metadata-based version discovery and remove iterative discovery (Issue #4556)
 - Remove manual selection of version discovery method via `-d` option (Issue #4832)
 - Implement CUBIC congestion window adaptation in ndncatchunks (Issue #4861)
@@ -113,30 +130,37 @@
 - Add manual page for ndnputchunks
 
 dissect & dissect-wireshark:
+
 - Follow packet specification changes to renumber the `Parameters` element and
   rename it to `ApplicationParameters` (Issues #4658, #4780)
 
 dump:
+
 - Fix compilation on CentOS 7 (Issue #4852)
 
 pib:
+
 - Completely remove this obsolete and unmaintained tool (Issue #4205)
 
 ## Version 0.6.3
 
 chunks:
+
 - Fix impossible RTT values (Issue #4604)
 - Add support for RDR metadata in ndnputchunks (Issue #4556)
 - Use `PendingInterestHandle` and `RegisteredPrefixHandle` (Issues #4316, #3919)
 
 ping:
+
 - Add systemd unit file for ndnpingserver (Issue #4594)
 - Use `PendingInterestHandle` and `RegisteredPrefixHandle` (Issues #4316, #3919)
 
 poke:
+
 - Use `PendingInterestHandle` and `RegisteredPrefixHandle` (Issues #4316, #3919)
 
 build system:
+
 - Upgrade `waf` to version 2.0.14 and other improvements
 
 ## Version 0.6.2
@@ -148,14 +172,17 @@
 The compilation now uses the C++14 standard.
 
 chunks:
+
 - Fix AIMD hanging with files smaller than the chunk size (Issue #4439)
 
 dissect-wireshark:
+
 - Show `Name` and `FinalBlockId` as URIs (Issue #3106)
 - Improve NDNLPv2 support (Issue #4463)
 - Add support for dissecting PPP frames
 
 dump:
+
 - Remove dependency on Boost.Regex
 - Stop using tcpdump headers files
 - Compile pcap filter with optimizations enabled
@@ -168,10 +195,12 @@
 - Code cleanup
 
 poke:
+
 - Use `Face::unsetInterestFilter` instead of `shutdown` (Issue #4642)
 - Improve unit testing (Issue #3740)
 
 ping:
+
 - Add `--quiet` option to ndnpingserver (Issue #4673)
 - Set `CanBePrefix=false` in Interests sent by ndnping (Issue #4581)
 - Code cleanup
@@ -179,25 +208,31 @@
 ## Version 0.6.1
 
 chunks:
+
 - Show correct packet loss stats in final summary (Issue #4437)
 - Avoid printing meaningless values when no RTT measurements are available (Issue #4551)
 
 dissect:
+
 - Recognize `CanBePrefix`, `HopLimit`, and `Parameters` TLV elements (Issue #4590)
 
 dissect-wireshark:
+
 - Recognize `CanBePrefix`, `HopLimit`, and `Parameters` TLV elements (Issue #4517)
 
 peek:
+
 - Drop `Selectors` support (Issue #4571)
 - Add `-P/--prefix` option to set `CanBePrefix` in the Interest packet
 
 build system:
+
 - Upgrade `waf` to version 2.0.6 and other improvements
 
 ## Version 0.6
 
 chunks:
+
 - Change the default Interest pipeline to AIMD (Issue #4402)
 - Include RTT stats in final summary (Issue #4406)
 - Respect `--retries=-1` in the AIMD pipeline (Issue #4409)
@@ -209,10 +244,12 @@
 ## Version 0.5
 
 all:
+
 - Switch to version 2 of certificates, `KeyChain`, and `Validator` (Issue #4089)
 - Compilation fixes (Issue #4259)
 
 chunks:
+
 - Make `ndnputchunks` display some output by default; a new `-q` flag makes the tool
   completely silent, except for errors (Issue #4286)
 - Refactor `ndnputchunks` options handling
@@ -220,6 +257,7 @@
 - Fix potential `ndncatchunks` crash on exit
 
 peek:
+
 - Convert use of `Link` into `ForwardingHint` (Issue #4055)
 
 ## Version 0.4
@@ -231,6 +269,7 @@
 installation of a newer version of the compiler (e.g., clang-3.4) and dependencies.
 
 chunks:
+
 - Change default version discovery to iterative
 - Improve help text of `ndnputchunks`
 - Fix `DiscoverVersionIterative` build error
@@ -239,24 +278,29 @@
 - Code cleanup and improvements
 
 dissect-wireshark:
+
 - Add initial support for NDNLPv2 (Issue #3197)
 - Fix potential memory overflow
 
 dump:
+
 - Add support for Linux cooked-mode capture (SLL) (Issue #3061)
 - Improve error messages
 
 pib:
+
 - Disable by default (can be compiled with ndn-cxx version 0.5.0)
 - Fix compilation error with new version of ndn-cxx library
 - Avoid use of deprecated block helpers
 - Correct build target path
 
 ping:
+
 - Recognize and trace NACK
 - Fix potential divide-by-zero bug in `StatisticsCollector` (Issue #3504)
 
 peek:
+
 - Recognize and properly handle NACK
 - Refactor implementation
 
@@ -265,18 +309,22 @@
 chunks: **New** (pair of) tool(s) for segmented file transfer
 
 peek:
+
 - Allow verbose output
 - Switch from `getopt` to `boost::program_options`
 - Add `--link-file` option
 
 ping:
+
 - Document ndnping protocol
 
 dump:
+
 - Capture and print network NACK packets
 - Update docs to include NACK capture feature
 
 build system:
+
 - Enable `-Wextra` by default
 - Fix missing tool name in `configure --help` output
 - Fix compatibility with Python 3
