alexey-t / atsynedit Goto Github PK
View Code? Open in Web Editor NEWMulti-line editor control, with syntax highlighting, for Lazarus
License: Other
Multi-line editor control, with syntax highlighting, for Lazarus
License: Other
Как настроить, чтобы
Попробовал ставить и size и size-1 -- каретка прыгает из первой строки экрана в нижнюю. @kvichans
You will be at the line 1 of the document. Not expected. (it actually is at the first line in the visible window)
But each press of right, will scroll the text up by one line ,
maybe add subj?
Start with this text in the editor
1: Aa < eol>
2: Ba < eol>
3: Ca < eol>
4:
column mode select
A
B
C
place caret on line 4 (the last empty line with no EOL
paste
1: Aa < eol>
2: Ba < eol>
3: Ca < eol>
4: A < eol>
5: B < eol>
6: C < eol>
7: < eol>
8:
Line 7 should not be there.
hangs
Place the caret past the end of a line.
Normally if a char is inserted, spaces are filled to the visible pos of the caret, and the char appears at the correct pos.
Place the caret past the end of a line.
Press Shift-right several times.
The caret will move. There is no visible selection
But if you press any char, the caret jumps back to where you started Shift-right and the char is inserted there (as if there had been a selection)
With group undo:
if you write text, go to new place, write text, go to new place, write text, go to new place, write text....
Then you can press undo, and it undoes one piece of text at a time (correct).
So undo 3 or 4 times. Now if you Redo, it will redo all, and al the undo become a single undo too, instead of being 3 or 4.
del
Если (1) текст из длинных строк (несколько ширин окна), (2) wrap off, то drag подцвеченного куска в minimap вверх-вниз приводит к перемещению горизонтального скрола в осн. тексте в крайнее правое положение
Сейчас каретка не перемещается с первой позиции второй строки на последнюю позицию первой строки при нажатии ВЛЕВО. Опции для такого поведения не нашел. Это будет?
Оч.хорошо. Давно ждали.
Можно ли доработать перенос пробельных символов?
Идея: переносить начиная с первого непробельного символа, попавшего за границу переноса.
Пример. Сейчас строка
····abc····xyz
будет переноситься так
····abc··
··xyz
а хотелось бы так
····abc····
xyz
To reproduce the issue, follow these steps:
abcdefg
hij
klmnopqrst
Expected result: The cursor will be on the letter g.
Actual result: The cursor will be on the letter d.
If on the very last line of the text, (where there is no new line at the end), press return. Watch the gutter, there are 2 new lines.
This can happen, if:
... at end, better now. 20 carets now fast -1M file, at end. Slower editing if newlines added; no newlines--fast. @User4martin
Спасибо за команды сохранения настроек
Может быть работа над этим еще не закончена?
Вот настройки, которые не сохраняются
Select some text in the last line. Then move sel up, down, down
Alt up, alt down, alt down
This inserts a new empty line. It can be repeated to add many new lines
add a very long line (500 chars) at the end of the text (as last line)
activate word wrap.
Go to the end of the text / end of that line.
The line should now fill the entire screen.
Switch off wordwrap.
The editor is empty, the gutter is empty too.
The editor show an area past the end of file.
В Сине это две независимые настройки.
В Демо верт.линии общих сдвигов (staple?) исчезают при выключении скрытых символов. Надеюсь это временно.
UPD Уже понял, что эти верт.линии не staple из Син. Они играют похожую роль. Считаю, что их отображение не нужно отображением скрытых символов.
press return several times, to add many empty lines.
go to pos 1 on the firs such empty line
shift-down
there will be a selection, it contain just the new line character(s)
press ctrl-c (copy).
now try to paste. => nothing
Double allocation of Ctrl+U:
Хорошо бы прямо в титуле тестового приложения писать версию/сборку контрола и самого приложения
Now lines 12-14 and 16-20 are hidden.
Line 15 is visible
But there is no fold marker or anything for the folded block 16 to 20.
Imho in such a case the entire block (11 to 20) should be unfolded.
But splitting the block into 2 new folds, revealing just one line is fine too, as song as fold indicators are correctly shown.
A similar issue happens if
line 12 will be visible, but the fold marker is still at line 11 (though the first hidden line is line 13)
Enter a line
123
Select the 2, now if you type any char the 2 will be overwritten.
Except, if you type tab. you get (2 leading spaces)
123
but I expect
13
Select some text (can be single line, or multi line selection), press return.
A new line is inserted, but the selected text is not replaced by the new line.
Backspace also does not delete the selection.
Normally this should select the line. But the editor just stops to respond. It goes into an endless loop.
create a column mode selection over several lines and copy it.
Go to end of file (last line)
Paste.
Only one line will be pasted.
start a column mode selection on the first part (first wrap part, before any wrap) of a wrapped line.
There will be a 2nd visible selection marker in the indent area on the next line of the wrapped text.
if you fold some text, all cursor movement will tread the folded block as one line.
That is if you do any action moving the cursor a line down, and you were right before the fold, then you will be right after the fold.
That is correct (as in expected).
The exception is column selection
ctrl-shift-right
ctrl-shift-down
ctrl-shift-down
ctrl-shift-down
the caret will visit each hidden line. IMHO it should not.
It should go through the fold in one move and extend the selectio (selected column)n to all lines in the fold.
If a line contains tab, or Japanese chars (full width)
abcdef // no tabs
--->----->123456 // tabs
place caret between b and c
press
shift-alt-right
shift-alt-down
The selected part in the 2nd line is way too the right of that in the first line. Imho, it should be nearest to the desired position, so either start before, or start after the first tab.
Heap dump by heaptrc unit
16101 memory blocks allocated : 4118435/4173704
16100 memory blocks freed : 4118343/4173608
1 unfreed memory blocks : 92
True heap size : 393216 (128 used in System startup)
True free heap : 392912
Should be : 392928
Call trace for block $001ABC68 size 92
$0043371F line 377 of ../../atsynedit/atcanvasproc.pas
$0044244D line 2498 of ../../atsynedit/atsynedit.pas
$00440813 line 1983 of ../../atsynedit/atsynedit.pas
$00440A3F line 2006 of ../../atsynedit/atsynedit.pas
$0056725B line 126 of include/customcontrol.inc
As a result, the cursor will jump to the beginning of the second (wrapped) line. It should jump to the end of the first line instead.
Все равно же потом опции будут как-то сохраняться. Почему бы уже в Демо не заложить этот механизм? Тяжко при каждом запуске одно и то же настраивать. Конечно, опции еще не устоялись, так пусть сохраняются "как есть" - новые и переименованные можно будет "донастраивать".
Никакой логики не просматривается в положении видимых строк при включенном wrap edge и изменениях размера окна. Желательно сохранять первую видимую строку
У команды sel: ext sel by line странное поведение, не совпадающее с ее именем. Она продолжает тек.выделение (в т.ч. просто каретку) до конца строки, вместо того, чтобы включить в выделение всю строку с кареткой.
Команда sel: sel lines at carets забывает включить в выделение eol.
In the case of a long paragraph which is word-wrapped over multiple lines, 'Show current line' should only show the current line, not the whole paragraph.
(Test here)
I have a very wide screen/desktop (multi monitor).
If I stretch the editor over the entire width of my screen, I can (with a small font) display about 1000 chars in a line WITHOUT scrolling. (they are all visible at the same time).
Or rather I could.
ATSynEdit only paints 400 chars of the line, and then an empty white space.
Не могу сообразить, как назначить Label на пост
2-3 parts with selection join incorrect, check CaretsJoin code..
In a wrapped paragraph, it is impossilbe to reach the first character in the second line by means of the 'cursor left' and 'cursor right' keys.
ON w32 (vista) if I increase the width of the editor (by increasing the width of the form), when I get over aprox 140 columns, the editor turns black
@User4martin I dont know how to make "ctl-K, ctrl-L" or "ctl-K, K, B" keys. If u have idea, how to make it... what handler need. for combo.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.