• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.github/H29-Jan-2021-154146

core/H29-Jan-2021-10,3627,252

docs/H03-May-2022-17,96412,705

lexers/H03-May-2022-

modules/H29-Jan-2021-10,8058,434

scripts/H29-Jan-2021-834709

src/H03-May-2022-47,58234,733

test/H29-Jan-2021-4,9424,448

themes/H29-Jan-2021-353227

.gitignoreH A D29-Jan-2021192 1916

LICENSEH A D29-Jan-20211 KiB2217

README.mdH A D29-Jan-20216.1 KiB141111

init.luaH A D29-Jan-202114.6 KiB369203

README.md

1# Textadept
2
3Textadept is a fast, minimalist, and remarkably extensible cross-platform text
4editor for programmers. Written in a combination of C and [Lua][] and
5relentlessly optimized for speed and minimalism for more than 12 years,
6Textadept is an ideal editor for programmers who want endless extensibility
7without sacrificing speed and disk space, and without succumbing to code bloat
8and a superabundance of features. The application has both a graphical user
9interface (GUI) version that runs in a desktop environment, and a terminal
10version that runs within a terminal emulator.
11
12[Lua]: https://lua.org
13
14## Features
15
16* Fast and minimalist.
17* Cross platform, and with a terminal version, too.
18* Self-contained executable -- no installation necessary.
19* Support for over 100 programming languages.
20* Unlimited split views.
21* Can be entirely keyboard driven.
22* Powerful snippets and key commands.
23* Code autocompletion and documentation lookup.
24* Remarkably extensible, with a heavily documented Application Programming
25  Interface (API).
26
27## Requirements
28
29In its bid for minimalism, Textadept depends on very little to run. On Windows
30and macOS, it has no external dependencies. On Linux and BSD, the GUI version
31depends only on [GTK][] (a cross-platform GUI toolkit) version 2.24 or later
32(circa early 2011), and the terminal version depends only on a wide-character
33implementation of curses like [ncurses][](w). Lua and any other third-party
34dependencies are compiled into the application itself.
35
36[GTK]: https://gtk.org
37[ncurses]: https://invisible-island.net/ncurses/ncurses.html
38
39## Download
40
41Textadept releases can be found [here][1]. Select the appropriate package for
42your platform. A comprehensive list of changes between releases can be found
43[here][2]. You can also download a separate set of modules that provide extra
44features and functionality to the core application.
45
46[1]: https://github.com/orbitalquark/textadept/releases
47[2]: https://orbitalquark.github.io/textadept/changelog.html
48
49## Installation and Usage
50
51Textadept comes with a comprehensive [user manual][] in its *docs/* directory.
52It covers all of Textadept's main features, including installation, usage,
53configuration, theming, scripting, and compilation.
54
55Since nearly every aspect of Textadept can be scripted using Lua, the editor's
56API is heavily documented. This [API documentation][] is also located in
57*docs/*. It serves as the ultimate resource when it comes to scripting the
58application.
59
60A more structured scripting resource is [Textadept Quick Reference][], which
61contains a wealth of knowledge on how to script and configure Textadept. It
62groups the editor's rich API into a series of tasks in a convenient and
63easy-to-use manner. This book serves as the perfect complement to Textadept's
64Manual and exhaustive API documentation.
65
66[user manual]: https://orbitalquark.github.io/textadept/manual.html
67[API documentation]: https://orbitalquark.github.io/textadept/api.html
68[Textadept Quick Reference]: https://orbitalquark.github.io/textadept/book.html
69
70## Compile
71
72Textadept is a bit unusual in that building it is only supported on Linux and
73BSD, or within a [Docker][] [image][]. The application is cross-compiled for
74Windows and macOS from Linux. While it is certainly possible to compile
75Textadept natively on those platforms, it is simply not supported in any
76official capacity.
77
78Textadept is built from its *src/* directory and binaries are placed in the
79application's root directory. The general procedure is to have Textadept build
80its dependencies first, and then its binaries. Textadept is self-contained,
81meaning you do not have to install it; it can run from its current location.
82
83General Requirements:
84
85* [GNU C compiler][] (*gcc*) 7.1+ (circa mid-2017)
86* [GNU Make][] (*make*)
87* [GTK][] 2.24+ development libraries for the GUI version
88* [ncurses][](w) development libraries (wide character support) for the terminal
89  version
90* [mingw-w64][] 5.0+ with GCC 7.1+ when cross-compiling for Windows.
91* [OSX cross toolchain][] with [Clang][] 4.0+ when cross-compiling for macOS.
92* _**OR**_
93* [Docker][]
94
95The following table provides a brief list of `make` rules for building Textadept
96on Linux and BSD. (On BSD, substitute `make` with `gmake`.)
97
98Command              |Description
99---------------------|-----------
100`make deps`          |Downloads and builds all of Textadept's core dependencies
101`make deps NIGHTLY=1`|Optionally downloads and builds bleeding-edge dependencies
102`make`               |Builds Textadept, provided all dependencies are in place
103`make GTK3=1`        |Builds Textadept using GTK 3.x
104`make DEBUG=1`       |Optionally builds Textadept with debug symbols
105`make curses`        |Builds the terminal version of Textadept
106`make win32-deps`    |Downloads and builds Textadept's Windows dependencies
107`make win32`         |Cross-compiles Textadept for Windows
108`make win32-curses`  |Cross-compiles the terminal version for Windows
109`make osx-deps`      |Downloads and builds Textadept's macOS dependencies
110`make osx`           |Cross-compiles Textadept for macOS
111`make osx-curses`    |Cross-compiles the terminal version for macOS
112
113When building within Docker, the relevant container [image][] is
114`ghcr.io/orbitalquark/textadept-build:v1.0`.
115
116For more information on compiling Textadept, please see the [manual][].
117
118[Docker]: https://www.docker.com/
119[image]: https://github.com/users/orbitalquark/packages/container/textadept-build
120[GNU C compiler]: https://gcc.gnu.org
121[GNU Make]: https://www.gnu.org/software/make/
122[GTK]: https://www.gtk.org
123[ncurses]: https://invisible-island.net/ncurses/ncurses.html
124[mingw-w64]: https://mingw-w64.org/
125[OSX cross toolchain]: https://github.com/tpoechtrager/osxcross
126[Clang]: https://clang.llvm.org/
127[manual]: https://orbitalquark.github.io/textadept/manual.html#compiling
128
129## Contribute
130
131Your [donation][] or purchase of the [book][] helps fund Textadept's continuous
132development.
133
134Textadept is [open source][]. Feel free to discuss features, report bugs, and
135submit patches. You can also contact me personally
136(orbitalquark.att.triplequasar.com).
137
138[donation]: https://gum.co/textadept
139[book]: https://orbitalquark.github.io/textadept/book.html
140[open source]: https://github.com/orbitalquark/textadept
141