diff --git a/include/libbej/meson.build b/include/libbej/meson.build
index 6866643..1a68dc9 100644
--- a/include/libbej/meson.build
+++ b/include/libbej/meson.build
@@ -1,14 +1,4 @@
-libbej_headers = files(
-  'bej_decoder_core.h',
-  'bej_decoder_json.hpp',
-  'bej_dictionary.h',
-  'bej_common.h',
-  'bej_encoder_core.h',
-  'bej_encoder_metadata.h',
-  'bej_encoder_json.hpp'
-)
+libbej_headers = files('bej_common.h', 'bej_decoder_core.h', 'bej_decoder_json.hpp', 'bej_dictionary.h', 'bej_encoder_core.h', 'bej_encoder_json.hpp'
+, 'bej_encoder_metadata.h')
 
-install_headers(
-  libbej_headers,
-  subdir:'libbej'
-)
+install_headers(libbej_headers, subdir: 'libbej')
diff --git a/meson.build b/meson.build
index 11bad07..aa37200 100644
--- a/meson.build
+++ b/meson.build
@@ -1,21 +1,22 @@
 project(
-  'libbej',
-  'c',
-  'cpp',
-  version: '0.1',
-  meson_version: '>=1.1.1',
-  default_options: [
-    'c_std=c18',
-    'cpp_std=c++23',
-    'werror=true',
-    'warning_level=3',
-    'tests=' + (meson.is_subproject() ? 'disabled' : 'auto'),
-  ])
+    'libbej',
+    'c',
+    'cpp',
+    version: '0.1',
+    meson_version: '>=1.1.1',
+    default_options: [
+        'c_std=c18',
+        'cpp_std=c++23',
+        'werror=true',
+        'warning_level=3',
+        'tests=' + (meson.is_subproject() ? 'disabled' : 'auto'),
+    ],
+)
 
 libbej_incs = include_directories('include', 'include/libbej')
 subdir('src')
 subdir('include/libbej')
 if get_option('tests').allowed()
-  subdir('test')
+    subdir('test')
 endif
 
diff --git a/src/meson.build b/src/meson.build
index b7f0706..abf576e 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -1,27 +1,28 @@
 libbej_lib = library(
-  'libbej',
-  'bej_decoder_core.c',
-  'bej_common.c',
-  'bej_dictionary.c',
-  'bej_tree.c',
-  'bej_encoder_core.c',
-  'bej_encoder_metadata.c',
-  'bej_decoder_json.cpp',
-  'bej_encoder_json.cpp',
-  include_directories : libbej_incs,
-  implicit_include_directories: false,
-  version: meson.project_version(),
-  install: true,
-  install_dir: get_option('libdir')
+    'libbej',
+    'bej_decoder_core.c',
+    'bej_common.c',
+    'bej_dictionary.c',
+    'bej_tree.c',
+    'bej_encoder_core.c',
+    'bej_encoder_metadata.c',
+    'bej_decoder_json.cpp',
+    'bej_encoder_json.cpp',
+    include_directories: libbej_incs,
+    implicit_include_directories: false,
+    version: meson.project_version(),
+    install: true,
+    install_dir: get_option('libdir'),
 )
 
 libbej = declare_dependency(
-  include_directories: libbej_incs,
-  link_with: libbej_lib
+    include_directories: libbej_incs,
+    link_with: libbej_lib,
 )
 
 import('pkgconfig').generate(
-  libbej_lib,
-  name: 'libbej',
-  version: meson.project_version(),
-  description: 'libbej')
+    libbej_lib,
+    name: 'libbej',
+    version: meson.project_version(),
+    description: 'libbej',
+)
diff --git a/test/meson.build b/test/meson.build
index f112e13..7462334 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -1,35 +1,47 @@
-gtest = dependency('gtest', main: true, disabler: true, required: get_option('tests'))
+gtest = dependency(
+    'gtest',
+    main: true,
+    disabler: true,
+    required: get_option('tests'),
+)
 gmock = dependency('gmock', disabler: true, required: get_option('tests'))
 
 if not gtest.found() or not gmock.found()
-  gtest_proj = import('cmake').subproject('googletest', required: false)
-  if gtest_proj.found()
-    gtest = declare_dependency(
-      dependencies: [
-        gtest_proj.dependency('gtest'),
-        gtest_proj.dependency('gtest_main'),
-      ])
-    gmock = gtest_proj.dependency('gmock')
-  else
-    assert(not get_option('tests').allowed(), 'Googletest is required')
-  endif
+    gtest_proj = import('cmake').subproject('googletest', required: false)
+    if gtest_proj.found()
+        gtest = declare_dependency(
+            dependencies: [
+                gtest_proj.dependency('gtest'),
+                gtest_proj.dependency('gtest_main'),
+            ],
+        )
+        gmock = gtest_proj.dependency('gmock')
+    else
+        assert(not get_option('tests').allowed(), 'Googletest is required')
+    endif
 endif
 
 gtests = [
-  'bej_decoder',
-  'bej_common',
-  'bej_dictionary',
-  'bej_tree',
-  'bej_encoder'
+    'bej_decoder',
+    'bej_common',
+    'bej_dictionary',
+    'bej_tree',
+    'bej_encoder',
 ]
 
 nlohmann_json_dep = dependency('nlohmann_json', include_type: 'system')
 
 libbej_test_incs = include_directories('include')
 foreach t : gtests
-  test(t, executable(t.underscorify(), t + '_test.cpp',
-                     build_by_default: false,
-                     implicit_include_directories: false,
-                     include_directories: libbej_test_incs,
-                     dependencies: [libbej, gtest, gmock, nlohmann_json_dep]))
+    test(
+        t,
+        executable(
+            t.underscorify(),
+            t + '_test.cpp',
+            build_by_default: false,
+            implicit_include_directories: false,
+            include_directories: libbej_test_incs,
+            dependencies: [libbej, gtest, gmock, nlohmann_json_dep],
+        ),
+    )
 endforeach
