Textadept (ultra-lightweight programming editor)

Submit portable freeware that you find here. It helps if you include information like description, extraction instruction, Unicode support, whether it writes to the registry, and so on.
Message
Author
User avatar
Midas
Posts: 6710
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Textadept (ultra-lightweight programming editor)

#1 Post by Midas »

[Mod note: the present is the official forum topic for Textadept; https://www.portablefreeware.com/?id=3017]

Based on the Scintilla engine, TextAdept (TA) is a portable programmer's editor quite apart from other offerings, with a right minimal GUI but the promise of infinite configurability/extensibility.

TA is not for the faint of heart regarding messing with configuration files (mostly text with a '.lua' extension) but is truly multi-platform, running in Linux, MacOS and Windows, both on GUI and on their respective CLIs. Might be a tweaker's dream, especially if you speak LUA...
http://foicica.com/textadept/ wrote:Textadept is a fast, minimalist, and ridiculously extensible cross-platform text editor for programmers. Written in a combination of C and Lua and relentlessly optimized for speed and minimalism over the years, Textadept is an ideal editor for programmers who want endless extensibility without sacrificing speed or succumbing to code bloat and featuritis.
Image
TextAdept GUI (customized with the green-mango theme found at the wiki)

Image
Curses version (console, where, for some unbeknownst reason, I was unable to type Capitals...)

TA has its own PAF launcher, TextAdept-Portable (presented at http://foicica.com/lists/textadept_arch ... /0718.html, possible obsolescence discussed at http://foicica.com/lists/textadept_arch ... /1532.html, download page at http://github.com/rgieseke/textadept-portable).

Nevertheless, TA appears to be natively portable via the use of its '-u' command line parameter (but since it expects a full path passed to it -- for info, see the _USERHOME function explanation at http://foicica.com/textadept/api/_G.html#_USERHOME -- I put together a minimal yaP launcher, available at http://pastebin.com/7Wg0iCqV).

Some quick notes to minimize the estrangement one might feel when using TA for the first time: there is no settings, preferences, or configuration dialog -- the closest thing you'll get is the save/load session file menu options; although TA is able to work with multiple documents, it doesn't show tabs for them -- to see its document list (buffers in TA lingo), type CTRL-B; lastly, don't dismiss TA as an arcane entity from the Open Source netherworld -- try it and you'll surely be impressed by how lightning fast it is.

Oh, and TA is able to recognize file types by extension, 'shebang' ("#!/path/to/exe") or any first line pattern. Also, as TA doesn't show any icon in Windows by default, be advised that various graphics are available in its core\images subfolder, including a 32x32 icon.

Download current version (v6.6) at http://foicica.com/textadept/download.

User avatar
tproli
Posts: 1172
Joined: Sat Sep 09, 2006 10:14 am
Location: Hungary
Contact:

Re: TextAdept

#2 Post by tproli »

Thanks, added to yaP examples. Indeed quite a different animal than other text editors.

I modified the commandline to save settings to "Settings" directory. And also added a line to handle "recently-used.xbel" though I don't know if this is the best solution (perhaps let leave it in %LocalAppdata%?)

Btw, that's the 101st yaP example

User avatar
guinness
Posts: 4118
Joined: Mon Aug 27, 2007 2:00 am
Contact:

Re: TextAdept

#3 Post by guinness »

I was recommended this editor today by an avid Linux user.

User avatar
Midas
Posts: 6710
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: TextAdept

#4 Post by Midas »

TextAdept is currently at v7.3 (changelog at http://foicica.com/textadept/CHANGELOG.html).

Note that there are significant API changes from v6.x -- documented at http://foicica.com/textadept/14_Appendi ... ept.6.to.7.

User avatar
lintalist
Posts: 434
Joined: Sat Apr 19, 2014 12:52 am
Contact:

Re: TextAdept

#5 Post by lintalist »

Takes a bit of getting used to but interesting for sure - Currently stable v7.7 (Oct 2014) and on its 3rd beta release of v7.8 (Jan 21st 2015)

http://foicica.com/textadept/CHANGELOG.html

edit: the 7.x series does show tabs when edit multiple documents
Last edited by lintalist on Sun Apr 12, 2015 1:21 am, edited 1 time in total.

User avatar
Midas
Posts: 6710
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: TextAdept

#6 Post by Midas »

Cool. Apparently, TextAdept now accepts relative paths for its "-u" command line parameter (as documented at http://foicica.com/wiki/relative-paths) making portability a trivial affair, even in multi-platform scenarios...

My current one liner portable launcher batch now reads thusly...

Code: Select all

@START "" textadept.exe -u .\data
But it does still create 'recently-used.xbel' in '%USERPROFILE%\AppData\Local'...

User avatar
lintalist
Posts: 434
Joined: Sat Apr 19, 2014 12:52 am
Contact:

Re: TextAdept

#7 Post by lintalist »

8.0 alpha (01 Apr 2015) - Wednesday, April 1, 2015 02:00
http://foicica.com/textadept/download

"Please see the 7 to 8 migration guide for upgrading from Textadept 7 to Textadept 8."
-- http://foicica.com/textadept/manual.htm ... ept.7.to.8

Changes:
  • Upgraded to Lua 5.3, LPeg 0.12.2, lfs 1.6.3, and lspawn 1.2.
  • Removed keys.LANGUAGE_MODULE_PREFIX, but left that prefix unused on all platforms.
  • textadept.editing.filter_through() now uses spawn().
  • Removed long-hand compile and run macros in favor of shorter ones.
  • textadept.bookmarks.toggle() accepts an optional line to bookmark.
  • Added support for Rust and TOML.
  • "Goto Bookmark" now lists bookmarks in all open buffers.
  • spawn_proc:kill() can send signals to processes.
  • New lexer._FOLDBYINDENTATION field for lexers that fold based on indentation.

User avatar
smaragdus
Posts: 2120
Joined: Sat Jun 22, 2013 3:24 am
Location: Aeaea

Re: TextAdept

#8 Post by smaragdus »

Textadept 8.2 released.
8.2 (01 Sep 2015)

Bugfixes:

· Fixed crash when quitting while the command entry is open.
· Block commenting respects indentation levels.
· Handle typeref in ansi_c module’s ctags support.
· Do not error when block commenting in an unsupported language.
· Scintilla: fix scrollbar memory leaks.

Changes:

· Highlight found text in “Find in Files” searches.
· Added Italian translation and updated French translation.
· Added automatic syntax checking as source files are saved, along with textadept.run.CHECK_SYNTAX and textadept.run.GOTO_SYNTAX_ERRORS configuration fields.
· Scintilla: multiple selection works over more key commands like caret movement, selections, and word and line deletions.
· Scintilla: new events.AUTO_C_COMPLETED event for when autocompleted text has been inserted.
· Updated to Scintilla 3.6.0.

User avatar
smaragdus
Posts: 2120
Joined: Sat Jun 22, 2013 3:24 am
Location: Aeaea

Re: TextAdept

#9 Post by smaragdus »

Textadept 8.4 has been released, changes since version 8.2:
8.3 (01 Oct 2015)

Bugfixes:

- Stop annoying black box from flashing when saving some files on Win32.
- Fixed bug in parsing Ruby error output.
- Do not emit events.LEXER_LOADED for the command entry.
- Fixed bug with Python syntax checking on Win32.
- Scintilla: fixed bug in buffer:count_characters().
- Scintilla: small GTK fixes.

Changes:

- Improved API documentation lookup behind the caret.
- Refactored snippets to longer display placeholder text.
- spawn() can now optionally specify the child’s environment.
- Added Gherkin lexer.
- Updated to Scintilla 3.6.1.
..
8.4 (11 Nov 2015)

Bugfixes:

- Various fixes for snippet bugs introduced in the refactoring.
- Fixed S-Tab in Find & Replace pane in the terminal version.
- Do not error when attempting to snapopen a non-existant project.
- Scintilla: fixed height of lines in autocompletion lists.
- Scintilla: fixed bug in buffer:line_end_display().

Changes:

- Bookmarks are saved in sessions.
- New snippet placeholder for a list of options (%n{list}).
- Snippets can now be functions that return snippet text.
- Added Lua API tags to the “ansi_c” module.
- Updated Swedish translation.
- Added support for Gherkin.
- Scintilla: whitespace can be shown only in indentation.
- Scintilla: optimized marker redrawing.
- Updated to Scintilla 3.6.2.
- Updated to LPeg 1.0.
..

TP109
Posts: 571
Joined: Sat Apr 08, 2006 7:12 pm
Location: Midwestern US

Re: TextAdept

#10 Post by TP109 »

With the TextAdept yaP launcher I found that some settings (init.lua, session) are saved in a TextAdept folder up one level from yaP root. Adding the following to the BEFORE section seems to fix it. I'm using XP, so it could be related to the OS.

Code: Select all

dir = ..\TextAdept :: Settings\

User avatar
Midas
Posts: 6710
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: TextAdept

#11 Post by Midas »

Can you try changing your TextAdept yaP launcher INI to this?

Code: Select all

[GENERAL]
application = App\textadept.exe
commandline = -u ..\Data\Conf

[BEFORE]
file = %Appdata%\recently-used.xbel :: Data\

Alternatively, the "commandline" key could be changed to '-u {EXEPATH}\Conf', for instance...

TP109
Posts: 571
Joined: Sat Apr 08, 2006 7:12 pm
Location: Midwestern US

Re: TextAdept

#12 Post by TP109 »

I should have been a little more clear. I am using the example provided by the yaP website for TextAdept as follows:

Code: Select all

[GENERAL]
application = App\textadept.exe
commandline = -u {YAPROOT}\Settings
[BEFORE]
file = %LocalAppdata%\recently-used.xbel :: Settings\
I then added:

Code: Select all

dir = ..\TextAdept :: Settings\ 
I will try your suggestion and post back with the results.

TP109
Posts: 571
Joined: Sat Apr 08, 2006 7:12 pm
Location: Midwestern US

Re: TextAdept

#13 Post by TP109 »

OK. Tried your suggestion. With those settings, TextAdept won't launch at all. I copied the TextAdept directory to another location and tried again, same thing. It works with the settings I stated. All three of the configuration files get stored in settings and I don't have that extra Textadept folder one level up. Also tried '-u {EXEPATH}\Conf' but the same, it won't launch at all. Also, the file "recently-used.xbel" is definately stored in %localappdata% and not in %appdata%.

User avatar
Midas
Posts: 6710
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: TextAdept

#14 Post by Midas »

Odd. It did start here (Windows 7 x64 SP1)... I understood you were using Windows XP? ('%LOCALAPPDATA%' doesn't exist in XP; I might be able to test it further later), but I'm afraid we could be witnessing the emergence of a split between Windows versions, as far as yaP is concerned. :?

TP109
Posts: 571
Joined: Sat Apr 08, 2006 7:12 pm
Location: Midwestern US

Re: TextAdept

#15 Post by TP109 »

The file is in C:\Documents and Settings\user\Local Settings\Application Data.

This is the info provided by MS for %localappdata%. It's different depending on Windows version:
https://www.microsoft.com/security/port ... ables.aspx

Windows XP and Windows 2000
C:\Documents and Settings\ <user name>\Local Settings\Application Data

Windows 10, Windows 8.1, Windows 7, and Windows Vista
C:\Users\ <user name>\AppData\Local

So with this config I get init.lua, recently-used.xbel, and session stored in the yaP settings folder:

Code: Select all

application = App\textadept.exe
commandline = -u {YAPROOT}\Settings

[BEFORE]
file = %LocalAppdata%\recently-used.xbel :: Settings\
dir = ..\TextAdept :: Settings\
The init.lua and session settings get stored in Settings using the default config provided in the yaP example for TextAdept. Its the recently-used.xbel setting that gets stored one folder up with the default settings. The file also being in %localappdata% might be from a previous non-portable install. Need to look into that.

So %localappdata% does exist in XP, but in a different location. I've seen it stated elsewhere that it doesn't exist in XP also. That it doesn't exist in the same location would be more correct I think.

Post Reply