Godot-TextEditor/README.md

150 lines
4.1 KiB
Markdown
Raw Normal View History

2021-10-11 18:41:26 +02:00
# Text Editor
2021-12-19 16:43:24 +01:00
Version `1.11`
2021-10-11 18:41:26 +02:00
2021-10-11 23:08:22 +02:00
![](README/readme_preview.png)
2021-10-11 23:04:25 +02:00
2021-10-11 18:41:26 +02:00
***Warning: Use at your own risk. Backup your files before testing.***
# Features
2021-10-24 17:27:27 +02:00
- Multi file tab system.
- File browser filtering.
- Highlighting for common formats (`md` `json` `ini`...)
2021-11-27 11:35:18 +01:00
- Tag [System](#mini-features-tags).
2021-10-11 18:41:26 +02:00
- File Management:
2021-10-24 17:27:27 +02:00
- Creation.
- Renaming.
- Recycling.
- Moving.
- Search files.
2021-11-24 17:09:48 +01:00
- Image previews.
- Auto save/load settings.
2021-11-27 11:35:18 +01:00
- Many little *Ease of Life* [features](#mini-features).
2021-10-11 18:41:26 +02:00
# Controls
2021-10-24 17:27:27 +02:00
- `ctrl + N` New file.
- `ctrl + W` Close file.
- `ctrl + shift + W` Open last closed file .
- `ctrl + tab` Select next open file.
- `ctrl + shift + tab` Select last open file.
- `ctrl + mouse wheel` Adjust font size.
- `ctrl + shift + mouse wheel` Adjust ui font size.
- `ctrl + up` & `ctrl + down` Move selected lines.
- `ctrl + /` Toggle line comments.
- `ctrl + M` Toggle file meta info.
- `ctrl + F` Search for text in all files.
- `ctrl + shift + 0-9` Create hotkey for selected file.
- `ctrl + 0-9` Load hotkeyed file.
2021-10-23 05:51:34 +02:00
## Symbol View
- `ctrl + click` Select entire block + children.
- `ctrl + shift + click` Select block without children.
2021-10-11 18:41:26 +02:00
2021-10-23 06:00:42 +02:00
## Editor View
- `ctrl + click` anywhere: Scroll to nearest symbol in symbol view.
- `ctrl + click` inside brackets: Goto local file.
2021-10-24 17:27:27 +02:00
- `ctrl + shift +`
- `U` Make selection uppercase.
- `L` Make selection lowercase.
- `O` Make selection capitalized.
- `P` Make selection variable: `My text -> my_text`
2021-10-23 06:00:42 +02:00
2021-10-11 18:41:26 +02:00
# Symbols and Tags
2021-10-24 17:27:27 +02:00
*Symbols* are like *Table of Contents* for a file.
2021-10-11 18:41:26 +02:00
- `Markdown` uses headings `# Heading`
- `JSON` uses Dictionaries `"object": {`
- `YAML` uses Dictionaries `object: `
- `ini` `cfg` use headings `[heading]`
2021-10-23 06:00:42 +02:00
Symbols can have *Tags*. Tags are added with comments.
2021-10-11 18:41:26 +02:00
- `Markdown` uses `<!-- #tag1 #tag2 -->`
2021-10-11 23:13:50 +02:00
- `JSON` uses `"#": "#tag1 #tag2"`
2021-10-11 18:41:26 +02:00
- `YAML` uses `# #tag1 #tag2` or `"#": "#tag1 #tag2"`
- `ini` `cfg` uses `; #tag1 #tag2`
Symbols are per file, tags are shared across files.
When a file is opened with tags, they show up in bottom right *Tag Container*.
Click them to toggle on and off.\
This will then highlight *Files* and *Symbols* that have that tag.
# Todo
2021-10-13 19:47:08 +02:00
- [x] `1.1` Preserve folders open/close state.
2021-10-18 21:20:19 +02:00
- [x] `1.3` Search all files.
2021-10-24 17:27:27 +02:00
- [x] `1.7` Search file.
2021-10-13 19:47:08 +02:00
- [ ] Find and replace.
2021-10-24 17:27:27 +02:00
- [x] `1.7` Improve meta data based on format.
2021-10-14 20:49:03 +02:00
- [x] `1.2` Recycle folders.
2021-10-24 17:27:27 +02:00
- [x] `1.2` Unrecylce. (Toggle `view/directories/.trash` and press green arrow.)
2021-10-14 12:45:59 +02:00
- [ ] JSON formatting.
2021-10-24 17:27:27 +02:00
- [ ] JSON error testing.
- [ ] Color themes.
# Mini features
2021-11-27 11:35:18 +01:00
## File List
### Colorize Folder
You can colorize files in a folder for easier identification. Right click a folder and select a color.
The `tab colors` toggle at the top will toggle tabs colorized by folder.
### Content Preview
You can preview the contents of a file by `ctrl + click`ing it.
The list is clickable, so you can go straight to a section of the file.
When using the filter, contents will be scanned.
## Content List (Symbols)
### Selecting Sections
`ctrl + click`ing on a symbol will select all lines contained in it, and it's childrens.
`ctrl + shift + click` a symbol will only select it's lines, not it's childrens.
## File Editor
### Follow Link
You can follow Markdown links by `ctrl + click`ing on them.
## Tags
The tag list displays all tags throughout the files.
To add a tag to a file, include a comment, with a hashtag:
- `.md`: `<!-- #tag1 #tag2 -->`
- `.json`: `{ "#": "#tag1 #tag2 }`
- `.ini` `.cfg`: `; #tag1 #tag2`
- `.yaml`: `# #tag1 #tag2`
`click` a tag to select it.
All files in the File List and symbols in the Symbol List containing the tag, will be highlighted.
`ctrl + click` to select multiple tags at once.
## Meta Panel
Toggle the meta panel with `ctrl + M`.
### Meta
The meta tab updates whenever you make a save.
It lists some information on the contents of your file.
Currently it mostly only works for Markdown.
### Search
todo
### System
Hitting refrsh will list all files in a table with sortable columns.
Select a column to sort on:
- Chapter count.
- Word count.
- Unique words.
- Progress.
- Time since modified.
### Image
In Markdown files (`.md`) you can `ctrl + click` an image to preview it.
Images look like: `![](image_url.png)` in Markdown.