Files
haikuports/app-editors/cudatext/cudatext-1.221.0.0.recipe
2025-02-05 17:32:51 +00:00

87 lines
2.8 KiB
Bash

SUMMARY="The Cross Platform code and text editor"
DESCRIPTION="CudaText is a cross-platform text editor, written in Object Pascal.
It is open source project and can be used free of charge, even for business.
It starts quite fast: ~0.3 sec with ~30 plugins, on Linux on CPU Intel Core i3 3Hz.
It is extensible by Python add-ons: plugins, linters, code tree parsers, external tools.
Syntax parser is feature-rich, based on EControl engine (though not as fast as in some \
competitors).
Features:
* Syntax highlight for lot of languages (250+ lexers).
* Code tree: structure of functions/classes/etc, if lexer allows it.
* Code folding.
* Multi-carets and multi-selections.
* Find/Replace with regular expressions.
* Configs in JSON format. Including lexer-specific configs.
* Tabbed UI.
* Split view to primary/secondary. Split window to 2/3/4/6 groups of tabs.
* Command palette, with fuzzy matching.
* Minimap. Micromap.
* Show unprinted whitespace.
* Support for many encodings.
* Customizable hotkeys.
* Binary/Hex viewer for files of unlimited size (can show 10 Gb logs).
* Correctly saves binary files."
HOMEPAGE="https://cudatext.github.io/
https://github.com/Alexey-T/CudaText"
COPYRIGHT="2024 Alexey-T"
LICENSE="MPL v2.0"
REVISION="1"
SOURCE_URI="https://github.com/Begasus/CudaText-Haikuports/archive/refs/tags/$portVersion.tar.gz"
CHECKSUM_SHA256="ff36f42f360c1126492033db82b3cde23b66709170405ca5075c2cef61f8aef9"
SOURCE_DIR="CudaText-Haikuports-$portVersion/files"
ADDITIONAL_FILES="CudaText.rdef.in
setup-cudatext.sh
"
ARCHITECTURES="!all x86_64"
SECONDARY_ARCHITECTURES="x86"
POST_INSTALL_SCRIPTS="$relativePostInstallDir/setup-cudatext.sh"
PROVIDES="
cudatext$secondaryArchSuffix = $portVersion
app:CudaText
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
"
if [ "$targetArchitecture" = x86_gcc2 ]; then
REQUIRES+="
lib:libQt5Pas$secondaryArchSuffix
"
elif [ "$targetArchitecture" = x86_64 ]; then
REQUIRES+="
lib:libQt6Pas$secondaryArchSuffix
"
fi
INSTALL()
{
mkdir -p $appsDir $dataDir $postInstallDir
if [ "$targetArchitecture" = x86_gcc2 ]; then
cp 32bit/apps/CudaText $appsDir
elif [ "$targetArchitecture" = x86_64 ]; then
cp 64bit/apps/CudaText $appsDir
fi
cp -rf data/cudatext $dataDir
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local INTERNAL="`echo "$portVersion" | cut -d. -f4`"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@INTERNAL@|$INTERNAL|" \
$portDir/additional-files/CudaText.rdef.in > CudaText.rdef
addResourcesToBinaries CudaText.rdef \
$appsDir/CudaText
cp -f $portDir/additional-files/setup-cudatext.sh $postInstallDir
addAppDeskbarSymlink $appsDir/CudaText
}