Skip to content

powertab/powertabeditor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Power Tab Editor

Guitar tablature viewer and editor

Visit our website

Build Status

Translation status

Get it from the Snap Store Download on Flathub

Table of Contents

About Power Tab Editor

Power Tab Editor 2.0 - A powerful cross platform guitar tablature viewer and editor inspired by the ceased development and missing source code from the original Power Tab Editor. This project is open-source and written from scratch so that your favorite tabbing platform can continuously grow with your needs.

Key Features

  • Cross platform - Windows, Mac, & Linux
  • Tabbed layout for opening multiple files at the same time
  • Mixer interface for adjusting volumes during playback
  • Complete customization of keyboard shortcuts
  • Importing of Guitar Pro tabs

Supported File Types

  • .pt2
  • .ptb
  • .gp3, .gp4, .gp5
  • .gpx
  • .gp

Users

Developers

  • Development help is very welcome! If you're interested in contributing, the issue tracker has a list of good first issues that are easier to dive into!
  • Feel free to ask development-related questions on the discussions page or on Discord
  • See below for instructions on how to compile and run the project:

Dependencies:

  • CMake >= 3.12
  • Boost >= 1.74
    • algorithm
    • date_time
    • endian
    • functional
    • iostreams
    • operators
    • rational
    • signals2
    • stacktrace
  • Qt >= 6.2 version or greater
  • nlohmann-json >= 3.7.3
  • RtMidi >= 4.0
  • pugixml
  • minizip
  • doctest
  • (Linux only) - ALSA library (e.g. libasound2-dev)
  • (Linux only) - MIDI sequencer (e.g. timidity-daemon)
  • A compiler with C++20 support.

Building:

Windows:

  • Install Git - see https://help.github.com/articles/set-up-git
  • Install vcpkg and run vcpkg install --triplet x64-windows boost-algorithm boost-date-time boost-endian boost-functional boost-iostreams boost-rational boost-signals2 boost-stacktrace doctest minizip nlohmann-json pugixml to install dependencies.
  • Install Qt by running vcpkg install --triplet x64-windows qtbase qttools (this may take a while), or install a binary release from the Qt website or https://github.com/miurahr/aqtinstall.
  • Open the project folder in Visual Studio and build.
    • If running CMake manually, set CMAKE_TOOLCHAIN_FILE to [vcpkg root]\scripts\buildsystems\vcpkg.cmake
PowerShell Installation Scripts
  • For a more installation streamlined process
    • with at least PowerShell 5.1 is installed on your machine
    • Run these powershell scripts in your powershell terminal with your shell working directory as your cloned project
.\scripts\Get-Dependencies.ps1 -vcpkg_exe_path "your/path/to/your/vcpkg.exe" -python_exe_path "your/path/to/your/python.exe";
.\scripts\Run-CMakeBuild.ps1 -vcpkg_dir "your/path/to/your/vcpkg" -qt_path "your/path/to/qt";

You'll have to update the variables for your specific paths to $vcpkg_exe_path, $python_exe_path, and $qt_path

Linux:

  • These instructions assume a recent Ubuntu/Debian-based system, but the package names should be similar for other package managers.
  • Install dependencies:
    • sudo apt update
    • sudo apt install cmake qt6-base-dev qt6-tools-dev qt6-tools-dev-tools qt6-l10n-tools libboost-dev libboost-date-time-dev libboost-iostreams-dev nlohmann-json3-dev libasound2-dev librtmidi-dev libpugixml-dev libminizip-dev doctest-dev
      • You may also need to install libglx-dev libgl1-mesa-dev along with Qt6
    • sudo apt install timidity-daemon - timidity is not required for building, but is a good sequencer for MIDI playback.
    • Optionally, use Ninja instead of make (sudo apt install ninja-build)
  • Build:
    • mkdir build && cd build
    • cmake ..
      • Add -DCMAKE_INSTALL_PREFIX=/some/path to customize the install directory.
      • Add -DCMAKE_BUILD_TYPE=Debug for a debug build instead of a Release build.
      • Add -DCMAKE_CXX_COMPILER=clang++ to compile with Clang.
      • Add -G Ninja to generate Ninja build files.
    • make -j8 or ninja
  • Run:
    • ./bin/powertabeditor
    • ./bin/pte_tests to run the unit tests.
  • Install:
    • make install or ninja install

OS X:

  • Install Xcode along with its Command Line Tools.
  • Install dependencies:
  • Build:
    • mkdir build && cd build
    • cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -DCMAKE_PREFIX_PATH=/usr/local/opt/qt6/lib/cmake ..
      • To generate an Xcode project, switch to -G Xcode and then open and build build/powertabeditor.xcodeproj
    • ninja
  • Run:
    • open ./bin/Power\ Tab\ Editor.app
    • ./bin/pte_tests to run the unit tests.
    • For Xcode, select Product/Scheme/powertabeditor and then Product/Run.