|
|
a86befdea8
|
a bit of refactoring
|
2025-08-31 06:28:05 +01:00 |
|
|
|
542da2229c
|
a little additional scaffolding for normal mode
|
2025-08-31 02:41:37 +01:00 |
|
|
|
a9fda7d88b
|
change text building function in text-builder.sml to use the 'startX' and 'startY' fields added to the environment type
|
2025-08-31 01:38:42 +01:00 |
|
|
|
83e062eb60
|
fix visual bug resulting from 'TextBuilder.buildTextStringSearch' function. When we have a search string 'abc' and a file 'abcabc', there are two matches and it should also look like there are two matches, but it did not look like there were two matches prior to this commit. This commit fixes that by advancing the search position before adding to the text accumulator.
|
2025-08-31 00:05:48 +01:00 |
|
|
|
2b3f0405c6
|
reimplement search-range functionality to scan range from the string from left to right
|
2025-08-30 23:31:55 +01:00 |
|
|
|
de46376e4e
|
reimplement search list functionality (when building whole search list, not from range) to start from index 0, to get rid of edge cases resulting from reading the string backwards
|
2025-08-30 23:05:11 +01:00 |
|
|
|
0647589f13
|
handle edge case in searching: when we look for 'abba' in the text 'abbabba', it looks like we should have two matches, but to be consistent with other programs, we only have one match
|
2025-08-30 17:16:02 +01:00 |
|
|
|
9051717213
|
remove 'gl_samples' parameter (it was used from antialiasing, but we have a bitmap font, so we don't want antialiasing)
|
2025-08-20 14:01:24 +01:00 |
|
|
|
cd21f87732
|
fix compile error in shell/shell.sml (had to pass an additional parameter: 'Time.now ()')
|
2025-08-20 13:53:31 +01:00 |
|
|
|
c21d1b8205
|
progress fixing compile errors resulting from adding 'bufferModifyTime' field (fixed normal-mode move expressions)
|
2025-08-20 12:50:39 +01:00 |
|
|
|
642814fb36
|
begin adding a 'bufferModifyTime' field to the app_type (lots of refactoring to do now)
|
2025-08-20 12:17:07 +01:00 |
|
|
|
27c5d11dd7
|
code functions to build search list from a range in the buffer (not searching for every single match, but searching for visible matches on user's window)
|
2025-08-07 15:28:29 +01:00 |
|
|
|
752bb4d00f
|
don't return (buffer, searchList) tuple when building search list, but only return search list itself. (No point returning buffer as it is never modified or moved.)
|
2025-08-07 14:40:14 +01:00 |
|
|
|
704854c80f
|
use concurrency for rebuilding search list after deletion so we don't block main thread on very, very large files
|
2025-08-07 12:20:57 +01:00 |
|
|
|
e06a27d5ad
|
delete some dead code
|
2025-08-06 00:30:50 +01:00 |
|
|
|
f0f28a1318
|
clean up some dead code
|
2025-08-06 00:16:50 +01:00 |
|
|
|
0729662eef
|
minor formatting changes to exception logging, and begin building from new search list functionality as well
|
2025-08-05 13:59:10 +01:00 |
|
|
|
01369627bf
|
begin reimplementing search list data structure
|
2025-08-05 13:24:55 +01:00 |
|
|
|
b7cdbfbe02
|
log another exception-throwing test
|
2025-08-04 10:59:01 +01:00 |
|
|
|
1dc77e629e
|
add char event which triggers log
|
2025-08-04 09:29:37 +01:00 |
|
|
|
ce0f700253
|
abstract exception handler/logger into its own file
|
2025-08-04 09:03:47 +01:00 |
|
|
|
83634ef20e
|
log exceptions that occur to a local file
|
2025-08-04 06:23:52 +01:00 |
|
|
|
16fdfc7ac2
|
print stack trace for when an exception occurs
|
2025-08-03 13:14:28 +01:00 |
|
|
|
7045b69ce8
|
eliminate instance of currying/partial application with constant value (a constant mailbox) is shell/shell.sml
|
2024-12-17 10:55:58 +00:00 |
|
|
|
90f8732f06
|
move msgs into AppType.app_type, and refactor AppUpdate.update function to have type (app_type -> app_type) instead of pervious case which was (app_type -> app_type * MailboxType.t list). Reason: no need to allocate/return tuple when can store messages in type directly; previous msg list will be reset after each app update. All tests after refactor are passing.
|
2024-12-17 10:40:06 +00:00 |
|
|
|
09d9945201
|
add function to build search list from specific range
|
2024-11-16 12:27:14 +00:00 |
|
|
|
2a2f64f00c
|
add bgVertexBuffer and bgProgram to imperative shell, so we can draw bg and cursor without overlap, and without z-index
|
2024-11-15 10:26:22 +00:00 |
|
|
|
d5eb19f8d9
|
progress drawing spaces within search string, and drawing behind background of search string
|
2024-11-15 09:50:35 +00:00 |
|
|
|
025f9d2bf4
|
fix exception in bin-search.sml, by making sure that forwardLinearSearch always starts at 0 or more
|
2024-11-15 09:24:48 +00:00 |
|
|
|
54090ccf64
|
add yank functionality in imperative shell
|
2024-11-11 05:27:20 +00:00 |
|
|
|
6e66d4c968
|
done with imperative shell/ffi aspect of sending KEY_ESC to update thread when that action has occurred
|
2024-11-08 09:46:01 +00:00 |
|
|
|
428e5f2ecd
|
complete implementation of rightwards navigation (viL)
|
2024-10-17 02:57:26 +01:00 |
|
|
|
c77777cc09
|
add CHAR_EVENT message type (next is to handle hjkl navigation)
|
2024-10-17 01:38:31 +01:00 |
|
|
|
ce23e50c8d
|
scaffolding for char callback
|
2024-10-17 01:20:48 +01:00 |
|
|
|
5cc4357cc7
|
progress drawing cursor
|
2024-10-09 11:59:41 +01:00 |
|
|
|
9d7d00e8d1
|
add cursor buffer and cursor program to imperative shell
|
2024-10-09 11:22:39 +01:00 |
|
|
|
bfc5a3914c
|
hardcode more pleasant (in my opinion) colour scheme for the moment
|
2024-10-09 01:23:26 +01:00 |
|
|
|
68a1787958
|
done scaffolding cml and adding resize functionality
|
2024-10-06 10:23:07 +01:00 |
|
|
|
b95fc48252
|
scaffolding for concurrent ml
|
2024-10-06 09:32:56 +01:00 |
|
|
|
6766fd1485
|
a bit of scaffolding to prepare for adding resize callback + message types
|
2024-10-06 08:18:24 +01:00 |
|
|
|
c5efc4640f
|
return tuple from function 'startBuildTextLineGap' as function to move LineGap, used in 'startBuildTextLineGap' optimises nodes for better performance on subsequent operations
|
2024-10-05 23:27:25 +01:00 |
|
|
|
3f2f135a36
|
move LineGap to start after loading file in shell.sml, and fix wrong parameter passed in mutually recursive function, in buffer.sml
|
2024-10-05 15:07:23 +01:00 |
|
|
|
e64b7418ae
|
use LineGap.append in shell/shell.sml
|
2024-10-05 12:56:23 +01:00 |
|
|
|
2f0630dd88
|
draw super basic text to screen
|
2024-10-05 02:03:17 +01:00 |
|
|
|
de70d31ee1
|
progress adding function to draw text
|
2024-10-04 23:23:25 +01:00 |
|
|
|
c5913c5ccb
|
amend compiler error, and leave a couple of comments about drawText function
|
2024-10-03 07:28:58 +01:00 |
|
|
|
e6298e7b61
|
initialise text vertex buffer and text program in gl-draw.sml, and add functions to draw
|
2024-10-02 22:09:22 +01:00 |
|
|
|
eb0ca122d6
|
add draw module (very incomplete)
|
2024-10-01 08:25:12 +01:00 |
|
|
|
ae8005dceb
|
add shader strings for open gl
|
2024-09-30 15:46:19 +01:00 |
|
|
|
c37c8d60e3
|
init
|
2024-09-30 13:43:43 +01:00 |
|