Guldoman
0d2a89cb76
Don't use threads in `detectindent`
...
As it's execution only happens on load/save.
2021-09-07 07:53:03 +02:00
Guldoman
501be5fdfe
Use configured indent values if `detectindent` can't detect them
2021-09-07 07:53:03 +02:00
Guldoman
e99c76f8b8
Update `detectindent` cache only after saving/reloading
...
Before, if the indent wasn't fully detected, `detectindent` would try to
update every second. On files with very long lines this would cause
stutters.
Now the indent is updated only once after saving/reloading.
2021-09-07 07:53:03 +02:00
Francesco Abbate
4f68f7fd92
Try to fix problem with js syntax of '/=' operator
...
The operator '/=' was wrongly considered by the js syntax file as the
beginning of a regexp literal.
With this modification we modify the pattern for regexp literals to not
match expressions starting with '/='.
This doesn't seem entirely correct because apparently javascript can accept
regexp literals starting with '/=' but the rule used by the javascript
lexer is not known.
2021-09-06 09:31:17 +02:00
Guldoman
f18629ab64
Avoid exposing `treeview` commands when not usable
2021-09-02 23:19:40 +02:00
Guldoman
167cda23f6
Make open files follow renames
2021-09-02 23:19:40 +02:00
Francesco Abbate
e94718c5c4
Bring back min len autocomplete default to 3
2021-08-30 14:35:42 +02:00
Guldoman
ab6eac399c
Fix crash in project search when project has no files
2021-08-29 11:13:39 +02:00
Francesco Abbate
ccba91261d
Merge remote-tracking branch 'origin/fix-2.0.1'
2021-08-28 17:37:55 +02:00
Daniel Rocha
2b1c157a36
Refactored minimum scale bug fix code
2021-08-28 16:00:41 +02:00
Daniel Rocha
49ec7c88e8
Fix the additional four spaces to two spaces in the indent
2021-08-28 16:00:41 +02:00
Daniel Rocha
dac3a9cba5
Fix minimal scale possible
2021-08-28 16:00:41 +02:00
Daniel Rocha
95e86b040b
Refactored minimum scale bug fix code
2021-08-28 13:00:33 +02:00
Daniel Rocha
8335b11273
Fix the additional four spaces to two spaces in the indent
2021-08-28 13:00:33 +02:00
Daniel Rocha
e342a017e1
Fix minimal scale possible
2021-08-28 13:00:33 +02:00
Francesco Abbate
d46475532f
Introduce View objects context property
...
Used to determine if an instance of the given class should
be closed or not when a project session is terminated.
2021-08-27 23:55:17 +02:00
takase1121
2fec3052ce
add context menu options for logview
2021-08-24 11:31:22 +02:00
Adam Harrison
b6af395fc7
2.0 changelog and modversion updates.
2021-08-17 20:24:44 +02:00
luarocks
205b52b08a
Revert language_lua
2021-08-11 23:33:00 +02:00
luarocks
0bafece6a6
Add textadept theme and correct language_lua just a bit
2021-08-11 23:33:00 +02:00
Francesco Abbate
62bcc6abc2
Fix missing commas in autocomplete module
2021-08-02 10:07:43 +02:00
takase1121
1725b3ab83
revert config.lineguide option
2021-08-02 09:57:21 +08:00
takase1121
3b3677ca4b
add config.lineguide option
2021-08-02 09:57:21 +08:00
Adam Harrison
0777a6f0b8
Merged dev to master.
2021-07-20 14:39:50 -04:00
Francesco Abbate
7605b626e8
Add language_cpp plugins
...
Brought form the 1.16.12 release.
It provides support for C++ using multi-part syntax patterns. Take
the priority over C language plugins for header files.
2021-07-19 08:18:38 +02:00
Adam Harrison
423cd33810
Typo.
2021-07-15 17:58:14 -04:00
Adam Harrison
e539310e6d
Namespace plugin-specific configuration settings.
2021-07-15 17:58:14 -04:00
jgmdev
afa0c175e8
Added delete confirmation using NagView.
2021-07-12 11:41:31 -04:00
jgmdev
a4d5622eda
Make use of core.reschedule_project_scan()
2021-07-11 23:03:33 -04:00
jgmdev
68459a9199
Added context menu to treeview.
2021-06-28 11:11:49 -04:00
Adam Harrison
f9edca712d
Added in lineguide to core.
2021-06-21 23:21:07 +02:00
jgmdev
e9e1214e59
[plugin/scale] fixed wrong increase and decrease
...
If the user manually set the desired scale by calling scale.set(1.60)
the scale_level was not set accordingly which meant that later doing
a Scale:Increase/Decrease command yielded incorrect scale amount.
2021-06-17 20:58:22 -04:00
Francesco Abbate
1ad4289e76
Do not try to update topdir folder in treeview
...
If the directory expanded is a project's top directory
do not attempt to update its content.
Fix again issue #275
2021-06-17 19:07:32 +02:00
Francesco Abbate
4c9083398a
Fix error in dirname computation in TreeView
...
In TreeView:on_mouse_pressed() we need to find the directory a
relative filename belongs to from its absolute filename.
The code was using string.find to locate the relative filename
within the absolute path but in some very specific cases we can
find a pattern which is not the right-most one leading to a
wrong directory name.
Fix the error by adding a loop to make sure we find the right-most
match. The standard Lua library has not a string.rfind to make a
reverse search.
Close #275
2021-06-17 18:23:30 +02:00
Francesco Abbate
b39db791f9
Do not duplicate RootView method in contextmenu
...
The method RootView:on_mouse_pressed was copied in the contextmenu plugin with
a small modification to intercept the mouse clicks of the active view.
This approach is problematic because a relatively large portion of code is
duplicated.
We introduced a function named RootView.on_view_mouse_pressed to let plugins
like contextmenu intercepts mouse clicks in the active area without duplicating
the function RootView:on_mouse_pressed.
2021-06-17 10:22:31 +02:00
Adam Harrison
2fc245eb69
Added in an interface to the scale plugin.
2021-06-14 20:33:15 -04:00
Adam Harrison
aed643893e
Fixed contextmenu to play nice with dragging nodes.
2021-06-14 09:23:04 -04:00
Francesco Abbate
e7d0709828
Fix error in workspace file error reporting
2021-06-08 12:06:54 +02:00
Jefferson González
b4896ed69e
[plugin/contextmenu] Append itemsets that where registered. ( #258 )
2021-06-07 23:29:03 +02:00
takase1121
cd5c64fe8c
prevent mouse movement from propagating when context menu is open
2021-06-05 08:51:17 +08:00
takase1121
794cf3813a
export context menu
2021-06-05 08:47:32 +08:00
Francesco Abbate
c5acd030a1
Do not save log views in session file
2021-06-04 14:42:08 +02:00
Francesco Abbate
29e25a7605
Do not show empty documents when restoring session
...
When a filename cannot be read when restoring a session do
not create a document. Previous behavior was to create an empty
"unsaved" document.
2021-06-04 14:05:54 +02:00
Francesco
b046afccf9
Scale fonts context menu ( #246 )
...
* Retrieve scale plugin from lite-plugins
* New implementation of scale plugin and font C API
Introduce two new C API functions, renderer.font.get_size and set_size
respectively to get the font size and to set the size to a new value.
Using these functions we don't need to know the name of the font but
we can just change their size.
Adapt the scale plugin to use the new C API function with minor adaptations
in the logic.
Use smaller step to scale fonts.
Rename font_desc_free function, previous name was misleading as only the cached
resources are freed.
* Add contextmenu plugin from takase
From https://github.com/takase1121/lite-contextmenu
Adapted to show font scaling commands and find/replace commands.
i# testing.lua
* Fix the cursor flickering with contextmenu
To avoid flickering of the cursor when using the context menu
we add a new function `core.request_cursor` that just take note
of the cursor requested.
The cursor will be actually changed only in root_view:draw() method
only when all the drawing operations are done. This means the cursor
will be changed only once per frame and only the most recent cursor
change request will take effect.
* Remove unneeded scale plugin return functions
2021-06-03 22:49:37 +02:00
Adam
248d70a8ca
Add PCRE to support regular expressions
...
Use regular expressions instead of Lua patterns for find and replace editor commands.
Syntax files can now use regex or Lua patterns as before keeping backward compatibility for plugins.
2021-06-02 21:27:00 +02:00
Francesco Abbate
ee25e3c5f4
Reduce number of used lines in detectindent
2021-05-27 16:25:49 +02:00
Francesco Abbate
0a55b246b5
Use thread in detectindent plugin
2021-05-27 16:25:49 +02:00
Francesco Abbate
10fde6e264
Implement lazy loading of directories
...
When the number of files in a project directory is above the max
limit switch back to a mechanism to read directory content only
when the corresponding folder is expanded in the treeview.
When the command core:find-file is invoked the command core:open-file
is executed instead because the complete list of the project's
files is not available.
When a project search is done we search through all the files within
the project dir without indexing them.
Address issues #217 #203 #183 .
2021-05-26 14:22:10 +02:00
liquidev
78999cabe2
Improved Lua syntax ( #201 )
...
* improved Lua syntax
* added some missing cases with number literals
2021-05-20 19:02:40 +02:00
liquidev
86a7037ed9
support for multiple groups in one pattern ( #196 )
2021-05-19 22:35:28 +02:00
Francesco Abbate
92322986b8
Fix error with previous commit
...
Error was introduced with PR:
https://github.com/franko/lite-xl/pull/190
2021-05-17 10:16:55 +02:00
Adam
6e08c3321c
Fixed a bug where if detectindent is paired with another plugin that hooks the event, it'll overwrite the other plugin's functions. ( #190 )
2021-05-17 10:05:08 +02:00
Adam
85d0d684de
Truncated lines longer than 256 characters, and skipped to the relevant portion of the line to reduce slowdown and increase relevancy. ( #185 )
2021-05-17 09:16:20 +02:00
Adam
e54ffc49ea
Added in keyboard shortcuts to the project search module. ( #188 )
2021-05-17 09:14:46 +02:00
Cukmekerb
bd4efa14a2
add `of` keyword to language_js.lua and improve js string syntax highlighting in ( #186 )
2021-05-17 08:56:21 +02:00
Francesco Abbate
5cef643e02
Introduce new plugin versioning tag mod-version
...
New plugins should use the version tag:
-- mod-version: 1
The old version tag "-- lite-xl 1.16" will be considerer equivalent
to mod-version 1.
2021-05-05 22:38:29 +02:00
Adam Harrison
b69242312d
Changed HTML plugin to have case insensitive matching of script and style tags.
2021-05-01 14:52:39 -04:00
adamharrison
3fe6665b9a
Nested Syntax Highlighting ( #160 )
2021-05-01 11:45:30 +02:00
Francesco Abbate
dd9b4f06ab
Fix keymap binding on macos
2021-04-21 01:42:56 -07:00
Francesco Abbate
8bcace1d59
Merge remote-tracking branch 'origin/border-less-window'
2021-04-21 08:42:57 +02:00
Francesco Abbate
a1b3266d42
Improve language CSS color literal pattern
...
Close #123
2021-04-12 11:21:00 +02:00
Francesco Abbate
d7cc1f9f9d
Add plugin verification by version tag
2021-04-06 17:50:46 +02:00
Francesco Abbate
6e3cd41bd1
Logical test simplification in detectindent
2021-04-06 08:27:35 +02:00
Francesco Abbate
d1984942ea
Add hook function for Doc changes
2021-04-05 00:11:56 +02:00
takase1121
5e8444b2b1
rename tooltip_alpha_step to tooltip_alpha_rate
2021-03-20 01:04:07 +00:00
takase1121
93753634f5
set delay to 0.5 and disable animation
2021-03-20 01:03:16 +00:00
takase1121
cdf5b9b9b8
show tooltips only when hovering over text
2021-03-20 00:57:06 +00:00
takase1121
d191e8ee34
prevent rendering tooltip when alpha is 0
2021-03-20 00:28:49 +00:00
Takase
0bb7f21dd7
tooltip enhancements ( #114 )
...
Add a delay to show the tooltip and other improvements.
2021-03-18 16:18:36 +01:00
takase1121
1f97805321
normalize tooltip filename to home dir
2021-03-14 03:09:18 +00:00
Takase
13ebb51c38
add tooltips to treeview.lua ( #100 )
2021-03-13 16:44:40 +01:00
Francesco Abbate
5bf7abf23d
Ensure filename are store relative to project directory
2021-03-06 23:36:05 +01:00
Francesco Abbate
4d320c1946
Ensure treeview is large enough to show toolbar
2021-02-27 19:39:56 +01:00
Francesco Abbate
4d734e933c
Fix resize behavior of treeview and toolbar
...
Now toolbarview always compute up-to-date sizes and spacing to adapt to
changes in icon big font.
For treeview and toolbarview revert the goto_size approach to use the
original approach of rxi/lite. In order to make it work when user resizes
dragging the divider we use the view optional method set_target_size().
This latter changes the view's target size instead of changing its size
right away. The size is only changed by the lite's layout and animation
system.
Remove the config.treeview_size variable that was no longer working because
plugins are loaded before the user's config.
2021-02-27 12:13:11 +01:00
Francesco
0f789cd6a2
Merge pull request #63 from eugenpt/master
...
+js language regexp pattern
2021-02-24 20:21:44 +00:00
Francesco Abbate
cbb42d0028
Fix spacing in treeview
...
Previous setting was not okay with monospaced fonts
2021-02-24 17:50:34 +01:00
ep
b616b55fd9
+js language regexp pattern
2021-02-24 12:24:43 +07:00
Francesco Abbate
22de3354ce
Minor toobar tooltip adjustment
2021-02-21 12:57:42 +01:00
Francesco Abbate
fc46946ea1
Fix the flashing tooltip issue
2021-02-21 11:09:51 +01:00
Francesco Abbate
7a35e7c217
Don't show partially hidden icons in toolbar
2021-02-21 09:43:47 +01:00
Francesco Abbate
5e0dee3e18
Fix indent spaces/tabs labeling
2021-02-20 22:56:52 +01:00
Francesco Abbate
cf6332aebc
Fix tooltip from ghost toolbar
...
Github issue: https://github.com/franko/lite-xl/issues/48
2021-02-20 20:14:24 +01:00
Francesco Abbate
2a0846b604
Automatic keep adjusting indent size
...
When too few lines keep adjusting indent size
2021-02-19 11:51:49 +01:00
Francesco Abbate
ef24828307
Add toolbar tooltips
2021-02-19 11:50:20 +01:00
Francesco Abbate
e463ba8959
Add new toolbar buttons and tips
2021-02-19 10:08:45 +01:00
Francesco Abbate
6fcdafc5b6
Adjust line numbers for detect indent
2021-02-19 09:23:55 +01:00
Francesco Abbate
52fb5afe34
Improve detectindent to skip comments
2021-02-18 10:10:06 +01:00
Francesco Abbate
d18b90ad4f
Restore original key binding for trreview toggle
2021-02-16 09:41:03 +01:00
Francesco Abbate
c20aff2307
Adding final details for toolbarview plugin
2021-02-15 15:45:56 +01:00
Francesco Abbate
ebba21310b
Fix treesize toggle command and transition
2021-02-15 12:18:43 +01:00
Francesco Abbate
b836c2e1e6
Implement proper layout of toolbar
2021-02-15 00:36:39 +01:00
Francesco Abbate
5851a04098
Add hover and click functions for toolbar
2021-02-13 18:29:08 +01:00
Francesco Abbate
2765cbd92b
Show a dummy toolbar
...
Does not do anything for the moment
2021-02-12 15:54:11 +01:00
Francesco Abbate
7137f88b4c
Start working in toolbar
2021-02-11 18:37:34 +01:00
Francesco Abbate
f482ea318a
Makes resizable attribute explicit in Node:split()
2021-02-11 16:12:21 +01:00
Francesco Abbate
e69d201e1b
First preliminary implementation of treeview resize
...
Works but only cover resize along x.
2021-02-09 18:41:32 +01:00
Francesco Abbate
c2cccf0173
Fix conflict in treeview for top directories
...
Happened if a filename has the same name of a top directory.
It will cause a collision in the string to identify the entry into the cache.
2021-01-19 16:40:00 +01:00
Francesco Abbate
9412b3f0d8
Do not add project path in files from project search
2021-01-13 17:09:35 +01:00
Francesco Abbate
fcf763fe9c
Fix problem when project directory has a trailing slash
2021-01-10 12:56:15 +01:00
Francesco Abbate
773464eab8
Merge remote-tracking branch 'rxi/master'
2021-01-04 13:59:53 +01:00
Francesco Abbate
d85598ce17
Write workspace information in lite-xl config directory
2021-01-03 23:36:28 +01:00
Francesco Abbate
e548a6adb9
Fix directories management to always keep the project's directory
2021-01-03 12:02:07 +01:00
Francesco Abbate
9e5bf485df
Fix problem in workspace for relative directory
2020-12-31 09:09:21 +01:00
Francesco Abbate
77d65fb3a1
Add scrolling bar to TreeView
2020-12-30 16:15:33 +01:00
Francesco Abbate
c3f5d2c144
Fix problems with project files and project directories
...
Now treat coherently the case when the project directory is removed from
the project directories.
2020-12-30 14:53:50 +01:00
Francesco Abbate
b91a84eb56
Fix project change and quit versus workspace plugin
2020-12-30 14:31:36 +01:00
Francesco Abbate
0e263af3c6
Create common.serialize function
2020-12-30 13:32:25 +01:00
Francesco Abbate
b0686bbe87
Remove mouse command to remove directory and remap create directory
...
Create directory is now re-mapped to control+(left click).
2020-12-30 12:00:51 +01:00
Francesco Abbate
f2faddbec7
Add command to create a directory in a new category "files"
...
Use the alt + (left click) is tree view to create a directory and
shift + (middle click) to remove a project directory.
2020-12-30 11:52:26 +01:00
Francesco Abbate
08f36cda1f
Add support for project directories in workspace plugin
2020-12-29 18:04:13 +01:00
Francesco Abbate
b757f618f0
Import workspace plugin from franko/lite-plugins
2020-12-29 16:44:31 +01:00
Francesco Abbate
b7168b5ebb
Fix find in project problem with get_active_view
2020-12-28 23:35:52 +01:00
Francesco Abbate
ddd56ec615
Add command to remove a directory from the project
...
In addition directories can be removed with a mouse middle-click in the
tree view pane.
2020-12-28 15:51:16 +01:00
Francesco Abbate
c042bfc907
Change project files output to not include a prefix '/' in filename
...
It make sense to not put the initial '/' in the filename as the name
is relative to the top directory it belongs to.
By removing the the initial '/' in the filename we can re-introduce the
variable
core.project_files
to stay compatible with standard Lite. The project_files variable will
always point to the files table of the first entry of
core.project_directories.
2020-12-28 10:26:27 +01:00
Francesco Abbate
df74781da8
Fix project search and status view for new add directory feature
2020-12-27 18:28:21 +01:00
Francesco Abbate
e4fa196b33
Finalize add project directory feature
2020-12-27 11:32:52 +01:00
Francesco Abbate
39181a56fd
Use relative path for filenames in project directories
2020-12-27 09:47:58 +01:00
Francesco Abbate
5449781353
Minor cleanup to project directory stuff
2020-12-26 23:39:27 +01:00
Francesco Abbate
54518c438d
Cosmetic changes to names from previous commit
2020-12-26 23:29:18 +01:00
Francesco Abbate
ec730e9520
Test configuration with project_files stored separately for each directory
2020-12-26 21:22:57 +01:00
Francesco Abbate
2f50f21f57
Preliminary version of projects with multiple directories
2020-12-26 16:48:08 +01:00
rxi
806f0e39e3
Added support for `.pyw` files in language_python plugin
2020-12-19 10:19:37 +00:00
Francesco Abbate
58d3e23ca1
Include detect-indent improved plugin into Lite XL
2020-11-21 23:22:44 +01:00
Francesco Abbate
1634f68250
Add a warning when disable auto-complete due to too many symbols
2020-11-17 12:34:46 +01:00
Francesco Abbate
eb41569e8d
Implement limits for maximum number of symbols in autocomplete
...
Implemented to avoid excessive memory usage when loading big files with
many unique words.
2020-11-14 23:48:56 +01:00
rxi
99831bbc29
Added lua5.4 attribute support to `language_lua`
2020-07-01 09:26:41 +01:00
rxi
ae48049695
Changed `trimwhitespace` to never cause caret to reposition
2020-06-19 12:09:00 +01:00
rxi
ba6c14846b
Added file-header pattern support to `syntax`
2020-06-08 16:11:22 +01:00
rxi
877d940c0e
language_js improvements
2020-06-05 22:38:06 +01:00
rxi
e7320c2291
Made RootView:open_doc() try to use previous node if current node is locked
2020-05-22 15:50:27 +01:00
rxi
6b39fb6dfb
Changed autoreload to strip carriage-returns on reload
2020-05-21 09:58:47 +01:00
rxi
bc4bf3d384
Added core.set_active_view(); removed `focusable` boolean from View
2020-05-19 14:55:46 +01:00
rxi
4ae0d477c0
Made lite set project dir to CWD; removed core.project_dir
...
Fixes #100
2020-05-17 17:05:56 +01:00
rxi
adecaba292
Removed unused varibale in ./data/plugins/treeview.lua
2020-05-17 14:02:49 +01:00
rxi
7e7602c53c
Removed `exec` plugin -- moved to `lite-plugins` repo
2020-05-16 10:06:35 +01:00
rxi
59f5692f2e
Merge branch 'master' of https://github.com/rxi/lite
2020-05-16 10:00:13 +01:00
rxi
15129b49a6
Moved `config.treeview_size` from `config.lua` to `treeview.lua`
2020-05-16 09:44:31 +01:00
demotulatingswan
92b3b5ba86
Fixed various issues in exec:replace
2020-05-15 20:39:10 +02:00
rxi
23cf193026
Fixed lua's multi-line comment syntax pattern
...
Resolves #86
Resolves #87
2020-05-12 10:12:49 +01:00
rxi
ff2c7bf5e5
Added double-backtick support to language_md plugin
...
Resolves #80
2020-05-11 20:31:35 +01:00
rxi
af36658e68
Added custom suggestions support to autocomplete
...
`autocomplete.add()` can now be used to add additional auto complete suggestions
with descriptions
2020-05-11 19:37:50 +01:00
Willie Lawrence
a17fe46c05
Fixing trimwhitespace plugin bug
2020-05-10 11:26:44 -03:00
Daniel M
2ed29cae11
Put back get and set
2020-05-10 10:56:28 +02:00
Daniel M
3974971ff9
Update language_js.lua
2020-05-10 10:51:45 +02:00
rxi
7cdf7dc44f
Changed TreeView to first initialize its size in :update()
2020-05-07 14:03:37 +01:00
rxi
26d6e558f1
Added brightness transition to projectsearch text/line on complete
2020-05-02 16:53:03 +01:00
rxi
9fc185af2f
Added scroll bounds
...
Resolves #9
Resolves #6
Resolves #3
2020-05-02 00:21:04 +01:00
rxi
a9f3079c90
Added `refresh` command (`f5`) to projectsearch plugin's ResultView
2020-05-01 19:32:02 +01:00
rxi
2090379892
Fixed multiple links on one line in markdown syntax
2020-04-27 18:45:06 +01:00
rxi
accf09c4f9
Changed printed filenames to use format-specifier "%s" instead of %q
...
Fixes #22
2020-04-25 13:26:55 +01:00
rxi
b0e82f297e
Changed lua syntax to map label to function color
2020-04-21 22:56:27 +01:00
luveti
6ca88473c0
Added goto to lua language plugin
2020-04-21 15:36:58 -04:00
rxi
2a5a36f64e
Changed mapping of collapsed/expanded icons on icon font
2020-03-25 23:36:56 +00:00
rxi
1e9c3bef1f
Fixed autoreload plugin truncating last character of files with no newline at end
2020-03-24 19:48:27 +00:00
rxi
764b43494e
Moved .c, .lua and .md language syntaxes from core.syntax to plugins
2020-03-07 15:53:54 +00:00
rxi
2eab24032b
Made up/down commands on projectsearch ResultView scroll view
...
Fixes #14
2020-02-22 13:36:08 +00:00
rxi
d8c4bfa6ba
Initial commit
2019-12-28 11:17:56 +00:00