Commit Graph

23 Commits

Author SHA1 Message Date
Francesco Abbate 2aac1b8179 Fix doc opening to use absolute filenames
Now we store doc.filename only and removed doc.abs_filename. The former
doc.filename is always the absolute filename.

We use now the variable core.working_dir to transform relative path into
absolute ones.
2021-06-04 16:26:11 +02:00
Francesco Abbate 527b11029e Create new document if file doesn't exist
If a non-existing file is specified with the command "core:open-file"
a new document is opened with the given filename provided the directory
already exists.

The flag new_file is set to true in the Doc instance.

The file will be actually created only when the "save" command is used.

The document will be marked with the "*" event when no changes are done
to mean that it is a new file and is not yet saved.

The function common.normalize_path now process the .. and . in the
filename. Before was not needed because system.absolute_path already
get rid of them but now we need to have the absolute path of files
that not yet exists so we cannot use system.absolute_path.
2021-06-04 16:03:46 +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 820d520fc3 Store doc's babs_filename without home encoding
This is the way was supposed to be. All the filenames are supposed to be
stored without home encoding, i.e. with explicit paths.

Should fix issue #177 and make PR

https://github.com/franko/lite-xl/pull/174

unneeded.

It may also address issue #174 but would need further verifications.
2021-05-05 08:52:14 +02:00
Francesco Abbate 5766329313 Fix filename problem
Close #163
2021-05-01 19:27:29 +02:00
Francesco Abbate 3721ace099 Fix logical error in on_text_change 2021-04-06 08:26:53 +02:00
Francesco Abbate e43c980e4a Simplifies previous commit
Restore the previous signature of raw_insert/remove
2021-04-06 08:18:35 +02:00
Francesco Abbate d1984942ea Add hook function for Doc changes 2021-04-05 00:11:56 +02:00
Francesco Abbate de1afb3391 Add full filename path in window's title
Optimal implementation to limite computations in core.step.
2021-02-18 00:26:19 +01:00
Francesco Abbate 1ce1c114ba Fix reload module problem on windows 2021-02-17 19:20:00 +01:00
rxi ba6c14846b Added file-header pattern support to `syntax` 2020-06-08 16:11:22 +01:00
rxi 4b167e86c6 Fixed bug in Highlighter.invalidate() when setting first_invalid_line
The value should not be updated if the current first_invalid_line is less than
the new invalid line index
2020-06-02 22:50:03 +01:00
rxi 1b2fda2825 Changed block movement to mimic word movement 2020-05-28 13:55:25 +01:00
rxi 9c652086e8 Improved behaviour of and renamed `translate.next|previous_word_boundary` 2020-05-28 11:57:53 +01:00
rxi b8d2805502 Exposed doc's internal insert/remove: Doc:raw_insert|remove 2020-05-14 16:40:50 +01:00
rxi 543234c42e Removed redundant line from syntax highlighter 2020-05-10 09:20:06 +01:00
rxi 8671b02bdc Whitespace 2020-05-10 09:14:12 +01:00
rxi 3d49b6d200 Fixed highlighter resetting of syntax on doc filename change 2020-05-09 16:28:18 +01:00
rxi 18b7d70a91 Fixed rare case where core.doc.highlighter would iterate out of line bounds 2020-05-09 09:09:39 +01:00
rxi 31820b36ef Moved `syntax` from `doc.highlighter` to `doc` 2020-05-08 20:29:22 +01:00
rxi f5025efbb8 Moved highlighter code from `DocView` to `Doc`
* Only one highlighter state is kept per-document as opposed
  to one per-docview
* Fixes a bug with retaining older highlighter state as a
  DocView wasn't able to detect lines changing above it's viewport
* Renames `highlighter` module to more descriptive `tokenizer`
2020-05-07 21:14:46 +01:00
rxi b7ec7a6acf core.doc.translate comment fix 2020-04-21 23:15:43 +01:00
rxi d8c4bfa6ba Initial commit 2019-12-28 11:17:56 +00:00