Config to customize Textadept to act more like Atom/$ublime text

reback00 bf4c4d93fc Fixed scrollbar not showing 2 years ago
assets 7d4990d49f Added filetype selection in Extra menu and updated screenshot 4 years ago
backup c0456c74e8 Separate file data structure for hotexit + lexer save 5 years ago
lexers 12a5aac420 Updated and improved php lexer for Textadept 10 5 years ago
modules 79383d59e2 Added cleanup for new hotexit file structure 5 years ago
patches 368474653f Added make, modified heading 3 years ago
themes d067b837b8 Added GTK+3 dark instructions, updated theme 2 years ago
.gitignore ae32033e46 initial commit 6 years ago
LICENSE 3ccca9207e Initial commit 6 years ago
README.md bf4c4d93fc Fixed scrollbar not showing 2 years ago
init.lua dcbce6805e Fixed line select shortcut selecting incorrect lines 2 years ago

README.md

Textadept config files

Yet another textadept config. This is especially made and tested for web development in php + html/css but hopefully could be dropped in to any use case. I have tried my best to make it similar to Atom/$ublime.

alt text

Features

  • Tab switching with Ctrl+Tab
  • Hot exit feature (remembers unsaved buffers on exit)
  • Sets a dark theme (base16-default-dark)
  • Sets tab as default
  • Enables whitespace and wrap
  • Adds right click menu to copy filename (under "Extra")
  • Adds close tab on middle click*
  • Creates or closes buffers on middle click or double click on empty space in tab bar (extremely convenient and fast)*
  • Opens Find in Files result in new tab (unsplit view)*
  • Highlights trailing whitespace at the end of lines
  • Multi selection support to many keyboard shortcuts, such as delete lines, duplicate lines etc. (listed below in the Keyboard Shortcuts table)

* Some features require patching and compiling. It should work without patches, but then those features will not be available. See patches directory for details.

How to install/use

  • Optional, but recommended: apply patches and install from source. Easy to follow instructions are provided in the patches/README.md.
  • Or... install textadept from repo to use without patched features.
  • For config, do either:
git clone --depth=1 https://notabug.org/reback00/ta-config.git ~/.textadept

or...

git clone --depth=1 https://notabug.org/reback00/ta-config.git
cd ta-config
mkdir -p ~/.textadept && cp -r {modules,themes,lexers,init.lua} ~/.textadept/
  • Launch textadept and it should run with this config

For dark interface:

Edit/create this file:

  • Linux: ~/.gtkrc-2.0 (sometimes can be ~/.gtkrc-2.0.mine depending on distro)
  • Windows: textadept-install-folder\share\themes\MS-Windows\gtk-2.0\gtkrc
  • macOS: Textadept.app/Contents/Resources/share/themes/Gnome-Cupertino/gtk-2.0/gtkrc

with the following content:

style "custombg" {
bg[NORMAL] = "#555555"
fg[NORMAL] = "#BABABA"
}
widget "textadept*" style "custombg"

You can change the colors as you wish. bg[NORMAL] is background color and fg[NORMAL] is the text color in the interface. The color is in #BBGGRR format, not #RRGGBB. Idea from here.

For GTK+3: ~/.config/gtk-3.0/gtk.css

#textadept * {
	background-color:#555555;
	color:#BABABA;
}
#textadept notebook {
	border:none;
}
#textadept trough {
	/* Set scrollbar background same as editor background */
	background-color:#272822;
}
#textadept slider {
	/* Set slider to be a bit brighter than default bg color set above */
	background-color:#888888;
}

See this color reference for instructions on how to use color.

For some features to work:

Patch the source code and build. See, patches directory for details.

Keyboard Shortcuts

Shortcut Action
Ctrl+Tab Switch between last used tabs.
Ctrl+Shift+Tab Open list of recent / recently closed files.
Ctrl+Page up Go to previous tab.
Ctrl+Page Down Go to next tab.
Ctrl+Shift+K Delete line(s). Supports multi selection, multi cursor.
Ctrl+D Duplicate line(s). Supports multi selection, multi cursor.
Ctrl+P Shows a list of possible commands.
Ctrl+G Go to a line.
Ctrl+L Select line(s).
Ctrl+J JavaDoc/PHPDoc comment.

Events

These events are introduced by the patched compile:

  • TAB_MIDDLE_CLICK: Runs when a tab is middle clicked.
  • TAB_MIDDLE_CLICK_BLANK: Runs when middle clicked on blank space on tab bar.
  • TAB_DOUBLE_CLICK_BLANK: Runs when double clicked on blank space on tab bar.

** Last tested in Textadept 10.8 under Linux 5.4 x86_64