Guitar tablature viewer and 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.
- 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
- .pt2
- .ptb
- .gp3, .gp4, .gp5
- .gpx
- .gp
- New user? Read the intro page to learn more about the project!
- Download:
- You can report bugs or suggest features on our issue tracker, or discuss ideas on the discussions forum
- You can translate the project into your language.
- Join the Discord community
- 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:
- 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.
- 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
- If running CMake manually, set
- 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
- 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
- You may also need to install
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 aRelease
build. - Add
-DCMAKE_CXX_COMPILER=clang++
to compile with Clang. - Add
-G Ninja
to generate Ninja build files.
- Add
make -j8
orninja
- Run:
./bin/powertabeditor
./bin/pte_tests
to run the unit tests.
- Install:
make install
orninja install
- Install Xcode along with its Command Line Tools.
- Install dependencies:
brew install boost cmake doctest minizip ninja nlohmann-json pugixml qt6 pugixml rtmidi
- Note that the Qt package from homebrew [does not currently work for building the installer|Homebrew/brew#15354]. Installing via https://github.com/miurahr/aqtinstall is an alternative.
- 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 buildbuild/powertabeditor.xcodeproj
- To generate an Xcode project, switch to
ninja
- Run:
open ./bin/Power\ Tab\ Editor.app
./bin/pte_tests
to run the unit tests.- For Xcode, select
Product/Scheme/powertabeditor
and thenProduct/Run
.