diff options
author | 2012-03-08 13:44:53 -0500 | |
---|---|---|
committer | 2012-03-08 13:44:53 -0500 | |
commit | 1ef52910df3a560d24a1d92e6fe7621a751d6859 (patch) | |
tree | b4971e7857f71525c68e442e3d9baddc0681075b /doc/06_AdeptEditing.md | |
parent | 7c5c9fa80851698caff1c7711bc1cd7f3979e07b (diff) |
Moved Manual into `doc/` root directory.
Diffstat (limited to 'doc/06_AdeptEditing.md')
-rw-r--r-- | doc/06_AdeptEditing.md | 183 |
1 files changed, 183 insertions, 0 deletions
diff --git a/doc/06_AdeptEditing.md b/doc/06_AdeptEditing.md new file mode 100644 index 00000000..30deac58 --- /dev/null +++ b/doc/06_AdeptEditing.md @@ -0,0 +1,183 @@ +# Adept Editing + +## Key Commands + +Textadept is entirely keyboard-driven. See the comprehensive list of key +commands in the [appendix][]. Key commands can be modified in your +[key preferences][]. + +[appendix]: 14_Appendix.html#Key.Bindings +[key preferences]: 9_Preferences.html#Key.Commands + +## Character Autopairing + +Usually, quote (`'`, `"`) and brace (`(`, `[`, `{`) characters go together in +pairs. By default, Textadept automatically inserts the complement character when +the first is typed. Similarly, the complement is deleted when you press +`Backspace` (`⌫`) over the first. See the [preferences][] page if you would like +to disable this. + +[preferences]: 9_Preferences.html#Module.Settings + +## Word Completion + +Textadept provides buffer-based word completion. Start typing a word, press +`Ctrl+Return` (`^⎋` on Mac OSX), and a list of suggested completions based on +words in the current document is provided. Continuing to type changes the +suggestion. Press `Return` (`↩`) to complete the selected word. + +![Word Completion](images/wordcompletion.png) + +## Adeptsense + +Textadept has the capability to autocomplete symbols for programming languages +and display API documentation. Lua is of course supported extremely well and +other languages have basic support with the help of [ctags][]. Symbol completion +is available by pressing `Ctrl+Space` (`⌥⎋` on Mac OSX). Documentation for +symbols is available with `Ctrl+H` (`^H`). + +![Adeptsense Lua](images/adeptsense_lua.png) + +![Adeptsense Lua String](images/adeptsense_string.png) + +![Adeptsense Doc](images/adeptsense_doc.png) + +For more information on adding adeptsense support for another language, see +the [LuaDoc][]. + +[ctags]: http://ctags.sf.net +[LuaDoc]: api/_M.textadept.adeptsense.html + +## Find and Replace + +`Ctrl+F` (`⌘F` on Mac OSX) brings up the Find/Replace dialog. In addition to +offering the usual find and replace, Textadept allows you to find with [Lua +patterns][] and replace with Lua captures and even Lua code! For example: +replacing all `(%w+)` with `%(string.upper('%1'))` capitalizes all words in the +buffer. Lua captures (`%n`) are only available from a Lua pattern search, but +embedded Lua code enclosed in `%()` is always allowed. + +Note the `Ctrl+G`, `Ctrl+Shift+G`, `Ctrl+Alt+R`, `Ctrl+Alt+Shift+R` key commands +for find next, find previous, replace, and replace all (`⌘G`, `⌘⇧G`, `^R`, `^⇧R` +respectively on Mac OSX) only work when the Find/Replace dialog is hidden. When +it is visible, use the button mnemonics: `Alt+N`, `Alt+P`, `Alt+R`, and `Alt+A` +(`⌘N`, `⌘P`, `⌘R`, `⌘A`) for English locale. + +[Lua patterns]: 14_Appendix.html#Lua.Patterns + +### Find in Files + +`Ctrl+Shift+F` brings up Find in Files (`⌘⇧F` on Mac OSX) and will prompt for a +directory to search. The results are displayed in a new buffer. Double-clicking +a search result jumps to it in the file. You can also use the `Ctrl+Alt+G` and +`Ctrl+Alt+Shift+G` (`^⌘G` and `^⌘⇧G` on Mac OSX) key commands. Replace in Files +is not supported. You will have to `Find in Files` first, and then `Replace All` +for each file a result is found in. The `Match Case`, `Whole Word`, and +`Lua pattern` flags still apply. + +![Find in Files](images/findinfiles.png) + +### Find Incremental + +You can start an incremental search by pressing `Ctrl+Alt+F` (`^⌘F` on Mac OSX). +Incremental search searches the buffer as you type. Only the `Match Case` option +is recognized. Pressing `Esc` (`⎋`) stops it. + +### Replace in Selection + +By default, `Replace All` replaces all text in the buffer. If you want to +replace all text in just a portion of the buffer, select a block of text and +then `Replace All`. + +## Indentation + +### Change Indent Level + +The amount of indentation for a selected set of lines is increased by pressing +`Tab` (`⇥`) and decreased by pressing `Shift+Tab` (`⇧⇥`). Using these key +sequences when no selection is present does not have the same effect. + +### Change Indent Size + +The indent size is usually set by a [language-specific module][] or the +[theme][]. You can set it manually using the `Buffer -> Indentation` menu. +Textadept shows what it is using for indentation in the document statusbar. + +![Document Statusbar](images/docstatusbar.png) + +[language-specific module]: 7_Modules.html#Buffer.Properties +[theme]: 8_Themes.html#Buffer + +### Using Tabs + +You can use tabs instead of the default spaces by pressing `Ctrl+Alt+Shift+T` +(`^⇧T` on Mac OSX) or using the `Buffer -> Toggle Use Tabs` menu. Textadept +shows what it is using for indentation in the document statusbar. + +The default option is usually set by a [language-specific module][] or the +[theme][]. + +[language-specific module]: 7_Modules.html#Buffer.Properties +[theme]: 8_Themes.html#Buffer + +### Converting Indentation + +Use the `Edit -> Convert Indentation` menu to convert indentation. If the buffer +is using tabs, all spaces are converted to tabs. If the buffer is using spaces, +all tabs are converted to spaces. + +## Selecting Text + +### Rectangular Selection + +Holding `Alt+Shift` (`⌥⇧` on Mac OSX) and pressing the arrow keys enables +rectangular selections to be made. Start typing to type on each line. + +![Rectangular Selection](images/rectangularselection.png) + +![Rectangular Edit](images/rectangularselection2.png) + +### Multiple Selection + +Clicking the mouse at a point in the buffer while holding `Control` places an +additional caret at that point. Clicking and dragging while holding `Control` +creates multiple selections. Start typing to enter text at each selection. + +This is currently unavailable on Mac OSX. + +### Selecting Entities + +Textadept allows you to select many different entities from the caret. For +example, `Ctrl+"` (`^"` on Mac OSX) selects all characters in a `""` sequence. +Typing `Ctrl++` (`^+`) as a follow-up selects the double-quotes too. See the +`Edit -> Select In...` menu for available entities and their key commands. + +## Enclosing Text + +As a complement to selecting entities, you can enclose text as entities. The +`Edit -> Selection -> Enclose In...` menu contains all available entities and +their key commands. + +If no text is selected, the word to the left of the caret is enclosed. + +## Word Highlight + +All occurrences of a given word are highlighted by putting the caret over the +word and pressing `Ctrl+Alt+Shift+H` (`⌘⇧H` on Mac OSX). This is useful to show +occurrences of a variable name in source code. + +![Word Highlight](images/wordhighlight.png) + +## Editing Modes + +### Virtual Space + +Virtual space (freehand) mode is enabled and disabled with `Ctrl+Alt+Shift+V` +(`^⇧V` in Mac OSX). When enabled, caret movement is not restricted by line +endings. + +### Overwrite + +Overwrite mode is enabled and disabled with the `Insert` key. When enabled, +characters in the buffer will be overwritten instead of inserted as you type. +The caret also changes to an underline when in overwrite mode. |