Commit Graph

28 Commits

Author SHA1 Message Date
Adam f85612e0f0
Fix Project Scanning (#746)
Removed dmon, and replaced with logic that works across Linux, Mac, FreeBSD and Windows. Have tested on all platforms, and seems to work.

Co-authored-by: Jan200101 <sentrycraft123@gmail.com>
2022-03-06 00:59:22 -05:00
Adam Harrison 96db380c73 Manual merge of into . 2021-11-23 15:57:22 -05:00
Francesco Abbate a9f6f01ed0 Move dmon files into lib/dmon 2021-10-08 22:10:17 +02:00
Francesco Abbate 9c43727ebc Implement directory monitoring using septag/dmon
Use a notification based directory monitoring based on the
septag/dmon lirbary instead of periodically rescan the whole
project's tree.
2021-10-08 21:31:22 +02:00
Adam Harrison c879e016cc Removed lib font renderer mention. 2021-09-24 11:22:39 -04:00
Adam Harrison be6bcbcacc Meson build updated. 2021-09-24 11:22:39 -04:00
Francesco Abbate c9669410ad Fix macOS build issue with recent commit
Add objc_args in meson when compiling to pass C defines also to
bundle_open.m.

Default "bundle" option to false to have by default a unix-like
build and install.

In the run-local script always expect that "bundle" option is to
false to have a unix-like install.

In the build-package script pass the -Dbundle=true option when
building on macos.

When setting the resouce path revert to original method using

[[NSBundle mainBundle] resourcePath]

to have the real resource path when the bundle option will be
activated. With the recent commit the function
set_macos_bundle_resources will be called only if the "bundle"
option is activate and is not used in unix-like mode.
2021-08-19 14:33:39 -07:00
redtide 3468164518 Updated Meson configuration
- Added version and license metadata
- Configuration data to be used in configured files to set metadata
- Portable binary and directories in the main install directory
- Binary file installed in correct places for all supported platforms
- Freedesktop AppStream support
- Added missing files install rules
2021-08-09 22:26:16 +02:00
redtide df63775dca Use lite-xl as project and exacutable names 2021-06-25 22:54:02 +02:00
jgmdev 5d2734de81 Merge reproc changes from dev. 2021-06-18 14:19:09 -04: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 3d84fe5488 Make usage of SDL renderer optional 2021-04-29 14:15:24 +02:00
Francesco Abbate 46c3bdea67 First implementation of scaling for retina display
Introduce a new approach that discriminate coordinates in
points and pixels. Now all the logic from the Lua side and in
rencache is to always use points. The coordinates are converted
to pixels only within the renderer, in the file renderer.c.
In this way the application logic does not need to care about the
scaling of the retina displays.

For non-retina display the scaling between points and pixels is
equal to one so nothing will change.

There is nevertheless a change that leak into the Lua side. The
subpixel coordinates are in sub-pixel, not sub-points so they are
scaled by the retina scaling factor. But no change in the code is
required because the subpixel scaling factor take into account the
retina scaling, when present.

Because the retina scaling factor is not know when the application
starts but only when a window is actually available we introduce a
mechanism to render the font with a given scaling factor only from
the renderer when they are needed. We use therefore FontDesc to
describe the font information but without actually rasterizing the
font at a given scale.
2021-04-26 15:16:34 +02:00
Francesco Abbate f913a8513f Testing functions to open files from bundle 2021-04-18 17:08:35 +02:00
Takase 49cde08ed6
Use Xlib to read resources (#142) 2021-04-02 16:43:21 +02:00
Francesco Abbate 3b040aabc7 Implement unicode character replacements
Useful to draw whitespaces with alternate characters and colors
without slowing down the text rendering.

A new API is implemented. A renderer.replacements object can be created
to list the replacements.

In turns the function renderer.draw_text and draw_text_subpixel now accept
two optional arguments for replacements.
2021-04-01 18:05:59 +02:00
Francesco Abbate dab39d3b5c Implement xrdb reading without popen
Avoid using the shell, awk and cut command
2021-03-17 16:58:44 +01:00
Francesco Abbate 3589d7d3c0 First implementation of unix-like data directory
It basically works by setting the data directory to

$prefix/share/lite-xl

where $prefix is determined so that $prefix/bin corresponds to EXEDIR.

The packages 'user' and 'user.*' are loaded from the directory
'$HOME/.config/lite-xl'.
2020-12-02 00:23:15 +01:00
Francesco Abbate c5575de058 Move font renderer in a separate folder as a library 2020-06-04 18:52:01 +02:00
U-ST\francesco abbate f61ffc4710 Add missing resource file on windows 2020-06-03 12:22:17 +02:00
Francesco Abbate 01a4981210 Use static libgcc and libstdc++ when doing release build 2020-06-02 23:20:22 +02:00
Francesco Abbate c41d6a82e1 Adjust BakeFontBitmap issues 2020-06-01 17:23:18 +02:00
Francesco Abbate c333425770 Remove stb from Meson dependencies for Lite 2020-06-01 15:28:07 +02:00
Francesco Abbate 3a8cb05ea6 Replace stb's BakeBitmapFont with AGG based font's renderer 2020-06-01 12:56:23 +02:00
Francesco Abbate 23a080ca45 WIP: compiles but completely broken
AGG files imported from AGG repository, sdl-testing branch.

the pixfmt_bgra32_lcd is just implemented and is not tested.
2020-05-28 12:15:24 +02:00
Francesco Abbate 79487074c0 Add missing gui_app flag in meson build 2020-05-25 16:18:06 +02:00
Francesco Abbate 7b9def299d Add dl library because it may be needed by SDL2
Should be fixed to be added only when needed.
2020-05-25 12:23:46 +02:00
Francesco Abbate 618078829c Add meson build configuration
Currently the editor will not work if it is not installed.

There is also a caveat about the 'data' directory which is installed
in the bin directory. This may work but does not seem ok because it is
pollution a shared bin directory and the 'data' folder may not be unique
to Lite.
2020-05-25 12:22:23 +02:00