git: 95e795fe22db - main - editors/imhex: Update to 1.26.2

From: MANTANI Nobutaka <nobutaka_at_FreeBSD.org>
Date: Mon, 09 Jan 2023 11:51:28 UTC
The branch main has been updated by nobutaka:

URL: https://cgit.FreeBSD.org/ports/commit/?id=95e795fe22db851d3d6dd24f7d94cdde8038f497

commit 95e795fe22db851d3d6dd24f7d94cdde8038f497
Author:     MANTANI Nobutaka <nobutaka@FreeBSD.org>
AuthorDate: 2023-01-09 11:50:07 +0000
Commit:     MANTANI Nobutaka <nobutaka@FreeBSD.org>
CommitDate: 2023-01-09 11:51:00 +0000

    editors/imhex: Update to 1.26.2
---
 editors/imhex/Makefile                             | 10 ++++----
 editors/imhex/distinfo                             | 22 ++++++++--------
 .../imhex/files/patch-cmake_build__helpers.cmake   | 29 ++++++++++-----------
 ...lib_external_libromfs_generator_source_main.cpp | 11 --------
 ...h-lib_external_pattern__language_CMakeLists.txt | 11 ++++++++
 ...b_external_pattern__language_lib_CMakeLists.txt | 11 --------
 ..._language_lib_include_pl_core_ast_ast__node.hpp | 17 ++++++++++++
 ...nclude_pl_core_ast_ast__node__builtin__type.hpp | 11 ++++++++
 ...ern__language_lib_include_pl_core_evaluator.hpp |  6 ++---
 ...pattern__language_lib_include_pl_core_token.hpp | 28 ++++++++++++--------
 .../imhex/files/patch-lib_libimhex_CMakeLists.txt  | 10 --------
 .../files/patch-lib_libimhex_source_helpers_fs.cpp | 11 +-------
 ...ns_builtin_source_content_settings__entries.cpp |  4 +--
 ...ins_builtin_source_content_views_view__find.cpp | 30 ++++++++++------------
 ..._source_content_views_view__pattern__editor.cpp |  8 +++---
 editors/imhex/pkg-plist                            | 23 ++++++++++++++++-
 16 files changed, 132 insertions(+), 110 deletions(-)

diff --git a/editors/imhex/Makefile b/editors/imhex/Makefile
index e212860f14a0..97a1b8889cc4 100644
--- a/editors/imhex/Makefile
+++ b/editors/imhex/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	imhex
-PORTVERSION=	1.25.0
+PORTVERSION=	1.26.2
 DISTVERSIONPREFIX=	v
 CATEGORIES=	editors
 MASTER_SITES=	https://git.sr.ht/~danyspin97/xdgpp/blob/f01f810714443d0f10c333d4d1d9c0383be41375/:xdg
@@ -58,11 +58,11 @@ GH_TUPLE=	btzy:nativefiledialog-extended:${GH_TAG_NATIVEFILEDIALOG}:nativefiledi
 GH_TAG_CAPSTONE=	d5141c0
 GH_TAG_CLI11=	faea921
 GH_TAG_FMT=	a337011
-GH_TAG_IMHEX_PATTERNS=	a9ada89
+GH_TAG_IMHEX_PATTERNS=	a4a1430
 GH_TAG_JTHREAD=	0fa8d39
-GH_TAG_LIBROMFS=	53a6bf5
-GH_TAG_NATIVEFILEDIALOG=	d4df2b6
-GH_TAG_PATTERN_LANGUAGE=	7aeac4a
+GH_TAG_LIBROMFS=	59d8cec
+GH_TAG_NATIVEFILEDIALOG=	6efc824
+GH_TAG_PATTERN_LANGUAGE=	58f1702
 GH_TAG_YARA=	ba94b4f
 
 CMAKE_ARGS=	-DUSE_SYSTEM_CURL=ON -DUSE_SYSTEM_NLOHMANN_JSON=ON \
diff --git a/editors/imhex/distinfo b/editors/imhex/distinfo
index cff429a8a5cb..49ab0dc33b8c 100644
--- a/editors/imhex/distinfo
+++ b/editors/imhex/distinfo
@@ -1,10 +1,10 @@
-TIMESTAMP = 1669206632
+TIMESTAMP = 1673255964
 SHA256 (imhex/xdg.hpp) = 2e08ce74adb71ff9b9aa9e1c999733fccd4b00967b9cf0c0e51dbf049392a9ec
 SIZE (imhex/xdg.hpp) = 7674
-SHA256 (imhex/WerWolv-ImHex-v1.25.0_GH0.tar.gz) = c2d730df224252159f9be3d2a3cbf3a592bfe38101414e06f64b0ac1776ec2c2
-SIZE (imhex/WerWolv-ImHex-v1.25.0_GH0.tar.gz) = 11001840
-SHA256 (imhex/btzy-nativefiledialog-extended-d4df2b6_GH0.tar.gz) = a0440e52bd25b8f85cb25ef68fe19ca39b4b0fad39358d5a501b317cad9d0f69
-SIZE (imhex/btzy-nativefiledialog-extended-d4df2b6_GH0.tar.gz) = 412249
+SHA256 (imhex/WerWolv-ImHex-v1.26.2_GH0.tar.gz) = bd5b24ec8b5e3cf907eb88f3769b6b8d4aeca5e8cb5b43fe880dd012c92d75ed
+SIZE (imhex/WerWolv-ImHex-v1.26.2_GH0.tar.gz) = 11058206
+SHA256 (imhex/btzy-nativefiledialog-extended-6efc824_GH0.tar.gz) = 9ada1814eaedcdb8aaae1829443747ab385b6f296e3e756a483c34456e15dcbd
+SIZE (imhex/btzy-nativefiledialog-extended-6efc824_GH0.tar.gz) = 412533
 SHA256 (imhex/capstone-engine-capstone-d5141c0_GH0.tar.gz) = 435d40757928fa73dec19c6d0fbf171bd76341391c8525ce1286927dab44c3e7
 SIZE (imhex/capstone-engine-capstone-d5141c0_GH0.tar.gz) = 5761632
 SHA256 (imhex/CLIUtils-CLI11-faea921_GH0.tar.gz) = 84773ee9577e6b719e5a84ad62cc381cf3027756690e1db839eaa50bcafc6c78
@@ -15,9 +15,9 @@ SHA256 (imhex/josuttis-jthread-0fa8d39_GH0.tar.gz) = ccd9c871dc2da9611e6d0cba5fc
 SIZE (imhex/josuttis-jthread-0fa8d39_GH0.tar.gz) = 4450456
 SHA256 (imhex/VirusTotal-yara-ba94b4f_GH0.tar.gz) = 4c81120bff451a55deaa23b48155d3eb35955ce11a1d76fbfcbbe2c2e33770b9
 SIZE (imhex/VirusTotal-yara-ba94b4f_GH0.tar.gz) = 1288534
-SHA256 (imhex/WerWolv-ImHex-Patterns-a9ada89_GH0.tar.gz) = fd1be6d54d1dfdeeb94cc3cb9789e6079cee80a0a3dc409b8d0c961eee747f17
-SIZE (imhex/WerWolv-ImHex-Patterns-a9ada89_GH0.tar.gz) = 5180991
-SHA256 (imhex/WerWolv-PatternLanguage-7aeac4a_GH0.tar.gz) = 170f3852353c28858fa3756b03f55a4a9bbd69561da071c36834bc00a56f19ca
-SIZE (imhex/WerWolv-PatternLanguage-7aeac4a_GH0.tar.gz) = 420016
-SHA256 (imhex/WerWolv-libromfs-53a6bf5_GH0.tar.gz) = 2caa05a847665ebff301dd7e684b4c7a1a9cc903a3bc0a83d4dccfdc1ea616de
-SIZE (imhex/WerWolv-libromfs-53a6bf5_GH0.tar.gz) = 3799
+SHA256 (imhex/WerWolv-ImHex-Patterns-a4a1430_GH0.tar.gz) = 9de0d582a266df555548f941c1c3ba57f576056dad2315a7bf727ee00cc4c6ba
+SIZE (imhex/WerWolv-ImHex-Patterns-a4a1430_GH0.tar.gz) = 6853083
+SHA256 (imhex/WerWolv-PatternLanguage-58f1702_GH0.tar.gz) = 80081c0962d4de1c0bd9287db0805451631956978814e071b81f14c74739082a
+SIZE (imhex/WerWolv-PatternLanguage-58f1702_GH0.tar.gz) = 426049
+SHA256 (imhex/WerWolv-libromfs-59d8cec_GH0.tar.gz) = 2ece573aefce05d42969097a26ff8e3eb81a5bbdc35650f2b45338c1a0304d0c
+SIZE (imhex/WerWolv-libromfs-59d8cec_GH0.tar.gz) = 4286
diff --git a/editors/imhex/files/patch-cmake_build__helpers.cmake b/editors/imhex/files/patch-cmake_build__helpers.cmake
index 818003a32010..3aed175bcc8d 100644
--- a/editors/imhex/files/patch-cmake_build__helpers.cmake
+++ b/editors/imhex/files/patch-cmake_build__helpers.cmake
@@ -1,18 +1,7 @@
---- cmake/build_helpers.cmake.orig	2022-10-08 08:03:47 UTC
+--- cmake/build_helpers.cmake.orig	2023-01-05 08:53:49 UTC
 +++ cmake/build_helpers.cmake
-@@ -383,24 +383,15 @@ function(downloadImHexPatternsFiles dest)
-         else ()
-             set(PATTERNS_BRANCH ImHex-v${IMHEX_VERSION})
-         endif ()
--
--        FetchContent_Declare(
--            imhex_patterns
--            GIT_REPOSITORY https://github.com/WerWolv/ImHex-Patterns.git
--            GIT_TAG master
--        )
--
--        FetchContent_Populate(imhex_patterns)
--
+@@ -370,13 +370,13 @@ function(downloadImHexPatternsFiles dest)
+ 
      else ()
          # Maybe patterns are cloned to a subdirectory
 -        set(imhex_patterns_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ImHex-Patterns")
@@ -27,11 +16,19 @@
          endforeach ()
      endif ()
  
-@@ -408,7 +399,6 @@ endfunction()
+@@ -384,7 +384,6 @@ endfunction()
  
  macro(setupCompilerWarnings target)
-     set(IMHEX_COMMON_FLAGS "-Wall -Wextra -Werror")
+     set(IMHEX_COMMON_FLAGS "-Wall -Wextra -Wpedantic -Werror")
 -    set(IMHEX_C_FLAGS "${IMHEX_COMMON_FLAGS} -Wno-restrict -Wno-stringop-overread -Wno-stringop-overflow")
  
      set(CMAKE_C_FLAGS    "${CMAKE_C_FLAGS}    ${IMHEX_C_FLAGS}")
      set(CMAKE_CXX_FLAGS  "${CMAKE_CXX_FLAGS}  ${IMHEX_C_FLAGS}")
+@@ -434,7 +433,6 @@ macro(addBundledLibraries)
+     endif()
+ 
+     if (NOT USE_SYSTEM_NFD)
+-        set(NFD_PORTAL ON CACHE BOOL "Use Portals for Linux file dialogs" FORCE)
+         add_subdirectory(${EXTERN_LIBS_FOLDER}/nativefiledialog EXCLUDE_FROM_ALL)
+         set_target_properties(nfd PROPERTIES POSITION_INDEPENDENT_CODE ON)
+         set(NFD_LIBRARIES nfd)
diff --git a/editors/imhex/files/patch-lib_external_libromfs_generator_source_main.cpp b/editors/imhex/files/patch-lib_external_libromfs_generator_source_main.cpp
deleted file mode 100644
index 70f22d9a5651..000000000000
--- a/editors/imhex/files/patch-lib_external_libromfs_generator_source_main.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- lib/external/libromfs/generator/source/main.cpp.orig	2022-11-23 12:47:55 UTC
-+++ lib/external/libromfs/generator/source/main.cpp
-@@ -87,7 +87,7 @@ int main() {
-         for (std::uint64_t i = 0; i < identifierCount; i++) {
-             std::printf("libromfs: Bundling resource: %s\n", paths[i].string().c_str());
- 
--            outputFile << "    " << "{ \"" << paths[i].string() << "\", romfs::Resource({ reinterpret_cast<std::byte*>(resource_" LIBROMFS_PROJECT_NAME "_" << i << ".data()), " << "resource_" LIBROMFS_PROJECT_NAME "_" << i << ".size() }) " << "},\n";
-+            outputFile << "    " << "{ \"" << paths[i].string() << "\", romfs::Resource({ reinterpret_cast<std::byte*>(resource_" LIBROMFS_PROJECT_NAME "_" << i << ".data()), " << "resource_" LIBROMFS_PROJECT_NAME "_" << i << ".size() - 1 }) " << "},\n";
-         }
-         outputFile << "};";
-     }
diff --git a/editors/imhex/files/patch-lib_external_pattern__language_CMakeLists.txt b/editors/imhex/files/patch-lib_external_pattern__language_CMakeLists.txt
new file mode 100644
index 000000000000..23723b28f688
--- /dev/null
+++ b/editors/imhex/files/patch-lib_external_pattern__language_CMakeLists.txt
@@ -0,0 +1,11 @@
+--- lib/external/pattern_language/CMakeLists.txt.orig	2023-01-05 15:06:41 UTC
++++ lib/external/pattern_language/CMakeLists.txt
+@@ -8,8 +8,6 @@ option(LIBPL_ENABLE_TESTS "Enable testing" OFF)
+ option(LIBPL_ENABLE_CLI "Enable building the CLI tool" ON)
+ option(LIBPL_ENABLE_EXAMPLE "Enable building the examples" OFF)
+ 
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-stringop-overflow -Wno-array-bounds")
+-
+ if (WIN32)
+     add_compile_definitions(OS_WINDOWS)
+ elseif (APPLE)
diff --git a/editors/imhex/files/patch-lib_external_pattern__language_lib_CMakeLists.txt b/editors/imhex/files/patch-lib_external_pattern__language_lib_CMakeLists.txt
deleted file mode 100644
index 871b7d4466b3..000000000000
--- a/editors/imhex/files/patch-lib_external_pattern__language_lib_CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
---- lib/external/pattern_language/lib/CMakeLists.txt.orig	2022-08-18 14:28:54 UTC
-+++ lib/external/pattern_language/lib/CMakeLists.txt
-@@ -1,7 +1,7 @@
- cmake_minimum_required(VERSION 3.16)
- project(libpl)
- 
--set(CMAKE_CXX_STANDARD 20)
-+set(CMAKE_CXX_STANDARD 23)
- 
- if (LIBPL_SHARED_LIBRARY)
-     set(LIBRARY_TYPE SHARED)
diff --git a/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_ast_ast__node.hpp b/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_ast_ast__node.hpp
new file mode 100644
index 000000000000..388fdd493069
--- /dev/null
+++ b/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_ast_ast__node.hpp
@@ -0,0 +1,17 @@
+--- lib/external/pattern_language/lib/include/pl/core/ast/ast_node.hpp.orig	2023-01-05 15:11:08 UTC
++++ lib/external/pattern_language/lib/include/pl/core/ast/ast_node.hpp
+@@ -15,11 +15,11 @@ namespace pl::core::ast {
+ 
+     class ASTNode : public Cloneable<ASTNode> {
+     public:
+-        constexpr ASTNode() = default;
++        ASTNode() = default;
+ 
+-        constexpr virtual ~ASTNode() = default;
++        virtual ~ASTNode() = default;
+ 
+-        constexpr ASTNode(const ASTNode &) = default;
++        ASTNode(const ASTNode &) = default;
+ 
+         [[nodiscard]] constexpr u32 getLine() const { return this->m_line; }
+         [[nodiscard]] constexpr u32 getColumn() const { return this->m_column; }
diff --git a/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_ast_ast__node__builtin__type.hpp b/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_ast_ast__node__builtin__type.hpp
new file mode 100644
index 000000000000..28714214c03e
--- /dev/null
+++ b/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_ast_ast__node__builtin__type.hpp
@@ -0,0 +1,11 @@
+--- lib/external/pattern_language/lib/include/pl/core/ast/ast_node_builtin_type.hpp.orig	2023-01-05 15:12:35 UTC
++++ lib/external/pattern_language/lib/include/pl/core/ast/ast_node_builtin_type.hpp
+@@ -15,7 +15,7 @@ namespace pl::core::ast {
+ 
+     class ASTNodeBuiltinType : public ASTNode {
+     public:
+-        constexpr explicit ASTNodeBuiltinType(Token::ValueType type)
++        explicit ASTNodeBuiltinType(Token::ValueType type)
+             : ASTNode(), m_type(type) { }
+ 
+         [[nodiscard]] constexpr const auto &getType() const { return this->m_type; }
diff --git a/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_evaluator.hpp b/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_evaluator.hpp
index 4a4690ac6ba2..a5a32aa8d084 100644
--- a/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_evaluator.hpp
+++ b/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_evaluator.hpp
@@ -1,9 +1,9 @@
---- lib/external/pattern_language/lib/include/pl/core/evaluator.hpp.orig	2022-09-16 15:53:53 UTC
+--- lib/external/pattern_language/lib/include/pl/core/evaluator.hpp.orig	2023-01-05 14:44:51 UTC
 +++ lib/external/pattern_language/lib/include/pl/core/evaluator.hpp
-@@ -6,6 +6,7 @@
- #include <optional>
+@@ -7,6 +7,7 @@
  #include <vector>
  #include <memory>
+ #include <unordered_set>
 +#include <unordered_map>
  
  #include <pl/core/log_console.hpp>
diff --git a/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_token.hpp b/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_token.hpp
index ad9cdf6ce02e..51443a6ce271 100644
--- a/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_token.hpp
+++ b/editors/imhex/files/patch-lib_external_pattern__language_lib_include_pl_core_token.hpp
@@ -1,9 +1,15 @@
---- lib/external/pattern_language/lib/include/pl/core/token.hpp.orig	2022-11-19 17:06:38 UTC
+--- lib/external/pattern_language/lib/include/pl/core/token.hpp.orig	2023-01-09 11:44:49 UTC
 +++ lib/external/pattern_language/lib/include/pl/core/token.hpp
-@@ -148,9 +148,9 @@ namespace pl::core {
+@@ -151,14 +151,14 @@ namespace pl::core {
+             bool global;
+             std::string comment;
+ 
+-            constexpr bool operator==(const DocComment &) const = default;
++            bool operator==(const DocComment &) const = default;
+         };
  
          using Literal    = std::variant<char, bool, u128, i128, double, std::string, ptrn::Pattern *>;
-         using ValueTypes = std::variant<Keyword, Identifier, Operator, Literal, ValueType, Separator>;
+         using ValueTypes = std::variant<Keyword, Identifier, Operator, Literal, ValueType, Separator, DocComment>;
 +        // These changes are necessary for Clang
 +        inline Token(Type type, auto value, u32 line, u32 column) : type(type), value(std::move(value)), line(line), column(column) {}
  
@@ -12,7 +18,7 @@
          [[nodiscard]] constexpr static inline bool isInteger(const ValueType &type) {
              return isUnsigned(type) || isSigned(type);
          }
-@@ -206,133 +206,133 @@ namespace pl::core {
+@@ -227,134 +227,134 @@ namespace pl::core {
  
      namespace tkn {
  
@@ -70,12 +76,14 @@
  
          namespace Literal {
  
--            constexpr auto IdentifierValue   = [](const std::string &name = { }) -> Token     { return createToken(core::Token::Type::Identifier, Token::Identifier(name)); };
--            constexpr auto NumericValue      = [](const Token::Literal &value = { }) -> Token { return createToken(core::Token::Type::Integer, value); };
--            constexpr auto StringValue       = [](const std::string &value = { }) -> Token    { return createToken(core::Token::Type::String, Token::Literal(value)); };
-+            inline auto IdentifierValue   = [](const std::string &name = { }) -> Token     { return createToken(core::Token::Type::Identifier, Token::Identifier(name)); };
-+            inline auto NumericValue      = [](const Token::Literal &value = { }) -> Token { return createToken(core::Token::Type::Integer, value); };
-+            inline auto StringValue       = [](const std::string &value = { }) -> Token    { return createToken(core::Token::Type::String, Token::Literal(value)); };
+-            constexpr auto IdentifierValue   = [](const std::string &name = { }) -> Token           { return createToken(core::Token::Type::Identifier, Token::Identifier(name)); };
+-            constexpr auto NumericValue      = [](const Token::Literal &value = { }) -> Token       { return createToken(core::Token::Type::Integer, value); };
+-            constexpr auto StringValue       = [](const std::string &value = { }) -> Token          { return createToken(core::Token::Type::String, Token::Literal(value)); };
+-            constexpr auto DocComment        = [](bool global, const std::string &value) -> Token   { return { core::Token::Type::DocComment, Token::DocComment { global, value }, 1, 1 }; };
++            inline auto IdentifierValue   = [](const std::string &name = { }) -> Token           { return createToken(core::Token::Type::Identifier, Token::Identifier(name)); };
++            inline auto NumericValue      = [](const Token::Literal &value = { }) -> Token       { return createToken(core::Token::Type::Integer, value); };
++            inline auto StringValue       = [](const std::string &value = { }) -> Token          { return createToken(core::Token::Type::String, Token::Literal(value)); };
++            inline auto DocComment        = [](bool global, const std::string &value) -> Token   { return { core::Token::Type::DocComment, Token::DocComment { global, value }, 1, 1 }; };
  
 -            constexpr auto Identifier = createToken(core::Token::Type::Identifier, { });
 -            constexpr auto Numeric = createToken(core::Token::Type::Integer, { });
diff --git a/editors/imhex/files/patch-lib_libimhex_CMakeLists.txt b/editors/imhex/files/patch-lib_libimhex_CMakeLists.txt
deleted file mode 100644
index d91be6ec76a6..000000000000
--- a/editors/imhex/files/patch-lib_libimhex_CMakeLists.txt
+++ /dev/null
@@ -1,10 +0,0 @@
---- lib/libimhex/CMakeLists.txt.orig	2022-10-08 08:03:47 UTC
-+++ lib/libimhex/CMakeLists.txt
-@@ -27,7 +27,6 @@ set(FPHSA_NAME_MISMATCHED ON CACHE BOOL "")
- find_package(PkgConfig REQUIRED)
- 
- if (NOT USE_SYSTEM_NFD)
--    set(NFD_PORTAL ON CACHE BOOL "Use Portals for Linux file dialogs" FORCE)
-     add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../external/nativefiledialog ${CMAKE_CURRENT_BINARY_DIR}/external/nativefiledialog EXCLUDE_FROM_ALL)
-     set_target_properties(nfd PROPERTIES POSITION_INDEPENDENT_CODE ON)
-     set(NFD_LIBRARIES nfd)
diff --git a/editors/imhex/files/patch-lib_libimhex_source_helpers_fs.cpp b/editors/imhex/files/patch-lib_libimhex_source_helpers_fs.cpp
index a36b83e2d2ff..a1901ae5fa7c 100644
--- a/editors/imhex/files/patch-lib_libimhex_source_helpers_fs.cpp
+++ b/editors/imhex/files/patch-lib_libimhex_source_helpers_fs.cpp
@@ -1,4 +1,4 @@
---- lib/libimhex/source/helpers/fs.cpp.orig	2022-10-08 08:03:47 UTC
+--- lib/libimhex/source/helpers/fs.cpp.orig	2023-01-05 08:53:49 UTC
 +++ lib/libimhex/source/helpers/fs.cpp
 @@ -14,10 +14,15 @@
      #include <shlobj.h>
@@ -16,12 +16,3 @@
  #include <filesystem>
  
  namespace hex::fs {
-@@ -189,7 +194,7 @@ namespace hex::fs {
-         #endif
-     }
- 
--    constexpr std::vector<std::fs::path> appendPath(std::vector<std::fs::path> paths, const std::fs::path &folder) {
-+    std::vector<std::fs::path> appendPath(std::vector<std::fs::path> paths, const std::fs::path &folder) {
-         for (auto &path : paths)
-             path = path / folder;
- 
diff --git a/editors/imhex/files/patch-plugins_builtin_source_content_settings__entries.cpp b/editors/imhex/files/patch-plugins_builtin_source_content_settings__entries.cpp
index 2df3722bff2f..a4402a37bf5a 100644
--- a/editors/imhex/files/patch-plugins_builtin_source_content_settings__entries.cpp
+++ b/editors/imhex/files/patch-plugins_builtin_source_content_settings__entries.cpp
@@ -1,6 +1,6 @@
---- plugins/builtin/source/content/settings_entries.cpp.orig	2022-10-08 08:03:47 UTC
+--- plugins/builtin/source/content/settings_entries.cpp.orig	2023-01-05 08:53:49 UTC
 +++ plugins/builtin/source/content/settings_entries.cpp
-@@ -21,8 +21,7 @@ namespace {
+@@ -22,8 +22,7 @@ namespace {
          userFolders.clear();
          std::vector<std::string> paths = setting;
          for (const auto &path : paths) {
diff --git a/editors/imhex/files/patch-plugins_builtin_source_content_views_view__find.cpp b/editors/imhex/files/patch-plugins_builtin_source_content_views_view__find.cpp
index a3f5987cf764..c548e2681e57 100644
--- a/editors/imhex/files/patch-plugins_builtin_source_content_views_view__find.cpp
+++ b/editors/imhex/files/patch-plugins_builtin_source_content_views_view__find.cpp
@@ -1,6 +1,6 @@
---- plugins/builtin/source/content/views/view_find.cpp.orig	2022-10-08 08:03:47 UTC
+--- plugins/builtin/source/content/views/view_find.cpp.orig	2023-01-05 08:53:49 UTC
 +++ plugins/builtin/source/content/views/view_find.cpp
-@@ -153,34 +153,87 @@ namespace hex::plugin::builtin {
+@@ -153,34 +153,86 @@ namespace hex::plugin::builtin {
      }
  
      template<typename Type, typename StorageType>
@@ -16,14 +16,12 @@
 +        } catch (...) {
              return { false, { }, 0 };
 +        }
- 
--        if (value < std::numeric_limits<Type>::min() || value > std::numeric_limits<Type>::max())
 +        if (value < std::numeric_limits<Type>::lowest() || value > std::numeric_limits<Type>::max())
-             return { false, { }, 0 };
- 
-         return { true, value, sizeof(Type) };
-     }
++            return { false, { }, 0 };
  
++        return { true, value, sizeof(Type) };
++    }
++
 +    template<typename Type, typename StorageType>
 +    static std::tuple<bool, i64, size_t> parseNumericValue_i(const std::string &string) {
 +        static_assert(sizeof(StorageType) >= sizeof(Type));
@@ -35,12 +33,12 @@
 +            return { false, { }, 0 };
 +        }
 +
-+        if (value < std::numeric_limits<Type>::lowest() || value > std::numeric_limits<Type>::max())
-+            return { false, { }, 0 };
-+
-+        return { true, value, sizeof(Type) };
-+    }
-+
+         if (value < std::numeric_limits<Type>::lowest() || value > std::numeric_limits<Type>::max())
+             return { false, { }, 0 };
+ 
+         return { true, value, sizeof(Type) };
+     }
+ 
 +    template<typename Type, typename StorageType>
 +    static std::tuple<bool, float, size_t> parseNumericValue_f(const std::string &string) {
 +        static_assert(sizeof(StorageType) >= sizeof(Type));
@@ -102,7 +100,7 @@
              default:    return { false, { }, 0 };
          }
      }
-@@ -293,7 +346,7 @@ namespace hex::plugin::builtin {
+@@ -293,7 +345,7 @@ namespace hex::plugin::builtin {
  
          auto occurrence = reader.begin();
          while (true) {
@@ -111,7 +109,7 @@
              if (occurrence == reader.end())
                  break;
  
-@@ -377,8 +430,12 @@ namespace hex::plugin::builtin {
+@@ -377,8 +429,12 @@ namespace hex::plugin::builtin {
          reader.seek(searchRegion.getStartAddress());
          reader.setEndAddress(searchRegion.getEndAddress());
  
diff --git a/editors/imhex/files/patch-plugins_builtin_source_content_views_view__pattern__editor.cpp b/editors/imhex/files/patch-plugins_builtin_source_content_views_view__pattern__editor.cpp
index 7372fc620a86..ba4910f07c4d 100644
--- a/editors/imhex/files/patch-plugins_builtin_source_content_views_view__pattern__editor.cpp
+++ b/editors/imhex/files/patch-plugins_builtin_source_content_views_view__pattern__editor.cpp
@@ -1,6 +1,6 @@
---- plugins/builtin/source/content/views/view_pattern_editor.cpp.orig	2022-11-23 07:51:06 UTC
+--- plugins/builtin/source/content/views/view_pattern_editor.cpp.orig	2023-01-05 08:53:49 UTC
 +++ plugins/builtin/source/content/views/view_pattern_editor.cpp
-@@ -461,7 +461,7 @@ namespace hex::plugin::builtin {
+@@ -439,7 +439,7 @@ namespace hex::plugin::builtin {
                      dataProvider->setReadOnly(true);
  
                      auto hexEditor = ui::HexEditor();
@@ -9,7 +9,7 @@
                          if (this->m_runningEvaluators != 0)
                              return std::nullopt;
                          if (!ImHexApi::Provider::isValid())
-@@ -483,7 +483,7 @@ namespace hex::plugin::builtin {
+@@ -461,7 +461,7 @@ namespace hex::plugin::builtin {
  
                      auto patternProvider = ImHexApi::Provider::get();
  
@@ -18,7 +18,7 @@
                          hexEditor.setProvider(dataProvider.get());
                          hexEditor.draw(480_scaled);
  
-@@ -944,7 +944,7 @@ namespace hex::plugin::builtin {
+@@ -934,7 +934,7 @@ namespace hex::plugin::builtin {
                          if (type->isTemplateType())
                              continue;
  
diff --git a/editors/imhex/pkg-plist b/editors/imhex/pkg-plist
index be18e512855b..99cc78bdcf59 100644
--- a/editors/imhex/pkg-plist
+++ b/editors/imhex/pkg-plist
@@ -1,5 +1,5 @@
 bin/imhex
-lib/libimhex.so.1.25.0
+lib/libimhex.so.1.26.2
 share/applications/imhex.desktop
 %%DATADIR%%/constants/_schema.json
 %%DATADIR%%/constants/crc16.json
@@ -18,14 +18,35 @@ share/applications/imhex.desktop
 %%DATADIR%%/includes/type/types/rust.pat
 %%DATADIR%%/includes/type/types/win32.pat
 %%DATADIR%%/includes/type/base.pat
+%%DATADIR%%/includes/type/bcd.pat
 %%DATADIR%%/includes/type/color.pat
+%%DATADIR%%/includes/type/magic.pat
 %%DATADIR%%/patterns/bson.hexpat
+%%DATADIR%%/patterns/chm.hexpat
+%%DATADIR%%/patterns/coff.hexpat
+%%DATADIR%%/patterns/cpio.pat
+%%DATADIR%%/patterns/dmg.hexpat
+%%DATADIR%%/patterns/fdt.pat
 %%DATADIR%%/patterns/flac.hexpat
+%%DATADIR%%/patterns/gif.hexpat
+%%DATADIR%%/patterns/gzip.hexpat
 %%DATADIR%%/patterns/id3.hexpat
+%%DATADIR%%/patterns/macho.hexpat
 %%DATADIR%%/patterns/minidump.hexpat
 %%DATADIR%%/patterns/msgpack.hexpat
+%%DATADIR%%/patterns/nbt.hexpat
+%%DATADIR%%/patterns/ne.hexpat
+%%DATADIR%%/patterns/pbzx.hexpat
+%%DATADIR%%/patterns/pcx.hexpat
+%%DATADIR%%/patterns/pfs0.hexpat
+%%DATADIR%%/patterns/qoi.hexpat
+%%DATADIR%%/patterns/sit5.hexpat
+%%DATADIR%%/patterns/tar.hexpat
 %%DATADIR%%/patterns/usb.hexpat
+%%DATADIR%%/patterns/wad.hexpat
+%%DATADIR%%/patterns/xci.hexpat
 %%DATADIR%%/patterns/xilinx_bit.hexpat
+%%DATADIR%%/patterns/zstd.hexpat
 %%DATADIR%%/encodings/arabic_iso.tbl
 %%DATADIR%%/encodings/arabic_windows.tbl
 %%DATADIR%%/encodings/ascii.tbl