#gtk #text-editor #editor #linux #javascript

app boop-gtk

A scriptable scratchpad for developers Port of @IvanMathy’s Boop to GTK

11 releases (7 stable)

1.4.0 Oct 12, 2020
1.3.0 Sep 23, 2020
1.1.0 Aug 25, 2020
0.2.1 Jul 27, 2020
0.0.1 Jun 30, 2020

#10 in Text editors

Download history 15/week @ 2020-06-30 15/week @ 2020-07-07 7/week @ 2020-07-14 22/week @ 2020-07-21 17/week @ 2020-07-28 1/week @ 2020-08-04 41/week @ 2020-08-11 13/week @ 2020-08-18 18/week @ 2020-08-25 34/week @ 2020-09-01 16/week @ 2020-09-08 13/week @ 2020-09-15 21/week @ 2020-09-22 19/week @ 2020-09-29 8/week @ 2020-10-06 13/week @ 2020-10-13

74 downloads per month

MIT license

7MB
9K SLoC

JavaScript 6K SLoC // 0.2% comments Rust 2K SLoC // 0.0% comments Swift 1K SLoC // 0.2% comments Shell 11 SLoC // 0.3% comments


A scriptable scratchpad for developers

Port of @IvanMathy's Boop to GTK

Continuous integration Release Crates.io boop-gtk Flathub

What is Boop-GTK?

Boop is a simple editor that allows you to execute scripts on the buffer. The idea is that you don’t have to paste potentially secret information into shady websites to do some simple transforms, like format json and decoding query strings.

Boop-GTK is a port of Boop to GTK, so users on Linux and Windows can Boop it!

Features

  • 50+ builtin scripts including "Base64 Encode", "Format JSON", "Hex to RGB" and more
  • 100% script compatibility with Boop
  • Completely crossplatform!

Screenshots

Linux Windows
linux windows

There is also a quick demo on youtube.

Get Boop-GTK

Linux Windows MacOS
boop-gtk.linux.amd64
boop-gtk.flatpak
boop-gtk.snap
Get it from the Snap Store
Download on Flathub
boop-gtk.windows.msi You should really use Boop,

but if you really want to:
boop-gtk.macos

Building

Linux

sudo apt-get install -y libgtk-3-dev libgtksourceview-3.0-dev
cargo build

Linux Snap

sudo apt-get install snap snapcraft
snapcraft snap
sudo snap install boop-gtk_1.4.0_amd64.snap

Linux Flatpak

sudo add-apt-repository ppa:alexlarsson/flatpak 
sudo apt-get update 
sudo apt-get install flatpak
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
sudo flatpak install -y flathub org.freedesktop.Platform//20.08 org.freedesktop.Sdk//20.08 org.freedesktop.Sdk.Extension.rust-stable//20.08
wget https://github.com/flatpak/flatpak-builder/releases/download/1.0.10/flatpak-builder-1.0.10.tar.xz && tar -xvf flatpak-builder-1.0.10.tar.xz && cd flatpak-builder-1.0.10 && ./configure --disable-documentation && make && sudo make install
sudo apt-get install python3-toml
bash flatpak/gen-sources.sh
flatpak-builder --repo=repo build-dir flatpak/uk.co.mrbenshef.Boop-GTK.json
flatpak build-bundle ./repo boop-gtk.flatpak uk.co.mrbenshef.Boop-GTK

MacOS

brew install gtk+3 gtksourceview3
cargo build

Windows

I don't really understand why sourceview isn't picked up automatically by system-deps but if you are curious.

git clone https://github.com/wingtk/gvsbuild.git C:\gtk-build\github\gvsbuild
cd C:\gtk-build\github\gvsbuild; python .\build.py build -p=x64 --vs-ver=16 --msys-dir=C:\msys64 -k --enable-gi --py-wheel --py-egg gtk3 gdk-pixbuf gtksourceview3
${Env:GTKSOURCEVIEW_3.0_NO_PKG_CONFIG}=1; ${Env:SYSTEM_DEPS_GTKSOURCEVIEW_3.0_LIB}="gtksourceview-3.0"; cargo build

Windows Installer

# follow build steps above, then:
cargo install cargo-wix 
${Env:GTKSOURCEVIEW_3.0_NO_PKG_CONFIG}=1; ${Env:SYSTEM_DEPS_GTKSOURCEVIEW_3.0_LIB}="gtksourceview-3.0"; cargo wix -v

Dependencies

~52MB
~1M SLoC