forked from KolibriOS/kolibrios
Compare commits
1 Commits
cedit_add_
...
ftpd-add-h
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f9425f5bd0 |
@@ -1,55 +1,55 @@
|
||||
Горячие клавиши:
|
||||
|
||||
ctrl+A выделить всё
|
||||
ctrl+C копировать
|
||||
ctrl+V вставить
|
||||
ctrl+X вырезать
|
||||
ctrl+L преобразовать в нижний регистр
|
||||
ctrl+U преобразовать в верхний регистр
|
||||
ctrl+F,
|
||||
ctrl+H показать панель поиска/замены
|
||||
Esc закрыть панель поиска; закрыть меню
|
||||
shift+Esc скрыть (свернуть) панель поиска
|
||||
F10 открыть главное меню
|
||||
shift+F10 открыть контекстное меню
|
||||
F3 найти следующий
|
||||
shift+F3 найти предыдущий
|
||||
ctrl+Z отменить
|
||||
ctrl+Y вернуть
|
||||
ctrl+G перейти на строку...
|
||||
ctrl+Del удалить строку
|
||||
ctrl+D дублировать строку
|
||||
ctrl+Up переместить текст вверх
|
||||
ctrl+Down переместить текст вниз
|
||||
ctrl+E выделить слово
|
||||
|
||||
Tab увеличить отступ для текста
|
||||
shift+
|
||||
Backspace уменьшить отступ для выделенного текста
|
||||
shift+Tab уменьшить отступ для текста
|
||||
|
||||
ctrl+F2 установить/снять метку
|
||||
F2 перейти к метке ниже
|
||||
shift+F2 перейти к метке выше
|
||||
|
||||
ctrl+S сохранить
|
||||
ctrl+O открыть
|
||||
ctrl+N,
|
||||
ctrl+T создать новый
|
||||
ctrl+W закрыть файл
|
||||
ctrl+Tab переключиться на следующую вкладку
|
||||
|
||||
ctrl+F9 компилировать
|
||||
F9 выполнить
|
||||
ctrl+F8 отладка
|
||||
|
||||
shift+wheel горизонтальная прокрутка
|
||||
|
||||
перемещение по тексту:
|
||||
(ctrl+)Home, (ctrl+)End, (ctrl+)PageUp, (ctrl+)PageDown
|
||||
ctrl+Left, ctrl+Right
|
||||
|
||||
перемещение в панели поиска:
|
||||
Tab к следующему полю ввода
|
||||
Shift-Tab к предыдущему полю ввода
|
||||
Enter поиск следующего вхождения
|
||||
Горячие клавиши:
|
||||
|
||||
ctrl+A выделить всё
|
||||
ctrl+C копировать
|
||||
ctrl+V вставить
|
||||
ctrl+X вырезать
|
||||
ctrl+L преобразовать в нижний регистр
|
||||
ctrl+U преобразовать в верхний регистр
|
||||
ctrl+F,
|
||||
ctrl+H показать панель поиска/замены
|
||||
Esc закрыть панель поиска; закрыть меню
|
||||
shift+Esc скрыть (свернуть) панель поиска
|
||||
F10 открыть главное меню
|
||||
shift+F10 открыть контекстное меню
|
||||
F3 найти следующий
|
||||
shift+F3 найти предыдущий
|
||||
ctrl+Z отменить
|
||||
ctrl+Y вернуть
|
||||
ctrl+G перейти на строку...
|
||||
ctrl+Del удалить строку
|
||||
ctrl+D дублировать строку
|
||||
ctrl+Up переместить текст вверх
|
||||
ctrl+Down переместить текст вниз
|
||||
ctrl+E выделить слово
|
||||
|
||||
Tab увеличить отступ для выделенного текста
|
||||
shift+
|
||||
Backspace уменьшить отступ для выделенного текста
|
||||
|
||||
ctrl+F2 установить/снять метку
|
||||
F2 перейти к метке ниже
|
||||
shift+F2 перейти к метке выше
|
||||
|
||||
ctrl+S сохранить
|
||||
ctrl+O открыть
|
||||
ctrl+N,
|
||||
ctrl+T создать новый
|
||||
ctrl+W закрыть файл
|
||||
ctrl+Tab переключиться на следующую вкладку
|
||||
|
||||
ctrl+F9 компилировать
|
||||
F9 выполнить
|
||||
ctrl+F8 отладка
|
||||
|
||||
shift+wheel горизонтальная прокрутка
|
||||
|
||||
перемещение по тексту:
|
||||
(ctrl+)Home, (ctrl+)End, (ctrl+)PageUp, (ctrl+)PageDown
|
||||
ctrl+Left, ctrl+Right
|
||||
|
||||
перемещение в панели поиска:
|
||||
Tab к следующему полю ввода
|
||||
Shift-Tab к предыдущему полю ввода
|
||||
Enter поиск следующего вхождения
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
Keyboard Shortcuts:
|
||||
|
||||
ctrl+A Select all
|
||||
ctrl+C Copy
|
||||
ctrl+V Paste
|
||||
ctrl+X Cut
|
||||
ctrl+L Convert to lowercase
|
||||
ctrl+U Convert to uppercase
|
||||
ctrl+F,
|
||||
ctrl+H Show search/replace panel
|
||||
Esc Close search panel; Close menu
|
||||
shift+Esc Hide (Minimize) search panel
|
||||
F10 Open main menu
|
||||
shift+F10 Open context menu
|
||||
F3 Find next
|
||||
shift+F3 Find previous
|
||||
ctrl+Z Undo
|
||||
ctrl+Y Redo
|
||||
ctrl+G Go to line...
|
||||
ctrl+Del Delete line
|
||||
ctrl+D Duplicate line
|
||||
ctrl+Up Move text up
|
||||
ctrl+Down Move text down
|
||||
ctrl+E Select word
|
||||
|
||||
Tab Increase indent for text
|
||||
shift+
|
||||
Backspace Decrease indent for selected text
|
||||
shift+Tab Decrease indent for text
|
||||
|
||||
ctrl+F2 Set/Remove bookmark
|
||||
F2 Go to next bookmark
|
||||
shift+F2 Go to previous bookmark
|
||||
|
||||
ctrl+S Save
|
||||
ctrl+O Open
|
||||
ctrl+N,
|
||||
ctrl+T Create new
|
||||
ctrl+W Close File
|
||||
ctrl+Tab Switch to Next Tab
|
||||
|
||||
ctrl+F9 Compile
|
||||
F9 Run
|
||||
ctrl+F8 Debug
|
||||
|
||||
shift+wheel Horizontal scrolling
|
||||
|
||||
Navigating text:
|
||||
(ctrl+)Home, (ctrl+)End, (ctrl+)PageUp, (ctrl+)PageDown
|
||||
ctrl+Left, ctrl+Right
|
||||
|
||||
Navigating in search panel:
|
||||
Tab Move to next input field
|
||||
shift+Tab Move to previous input field
|
||||
Enter Find next occurrence
|
||||
@@ -28,7 +28,7 @@ IMPORT
|
||||
RW, Ini, EB := EditBox, Tabs, Toolbar, SB := StatusBar;
|
||||
|
||||
CONST
|
||||
HEADER = "CEdit (25-jan-2026)";
|
||||
HEADER = "CEdit (11-jan-2026)";
|
||||
|
||||
ShellFilter = "";
|
||||
EditFilter = "sh|inc|txt|asm|ob07|c|cpp|h|pas|pp|lua|ini|json";
|
||||
@@ -1575,7 +1575,7 @@ VAR
|
||||
BEGIN
|
||||
menu := List.create(NIL);
|
||||
Menu.AddMenuItem(menu, menuIncInd, "increase Tab");
|
||||
Menu.AddMenuItem(menu, menuDecInd, "decrease shift-Tab");
|
||||
Menu.AddMenuItem(menu, menuDecInd, "decrease shift-Bksp");
|
||||
RETURN Menu.create(menu, mainTID)
|
||||
END CreateMenuIndent;
|
||||
|
||||
@@ -1686,8 +1686,6 @@ BEGIN
|
||||
ELSE
|
||||
IF keyCode = -1 THEN
|
||||
key := -1
|
||||
ELSIF (keyCode = 15) & shift THEN (* Shift-Tab *)
|
||||
T.Indent(text, FALSE)
|
||||
ELSIF keyCode = 61 THEN (* F3 *)
|
||||
key := -1;
|
||||
IF search & (searchText # "") THEN
|
||||
@@ -1757,7 +1755,7 @@ BEGIN
|
||||
ELSE
|
||||
SetFocus(ReplaceEdit, TRUE)
|
||||
END
|
||||
ELSIF keyCode = 28 THEN (* Enter *)
|
||||
ELSIF keyCode = 28 THEN (* Enter *)
|
||||
IF searchOpened & (searchText # "") THEN
|
||||
notFound := ~T.findNext(text, BKW.value)
|
||||
END
|
||||
@@ -1776,7 +1774,7 @@ BEGIN
|
||||
ELSE
|
||||
SetFocus(GotoEdit, TRUE)
|
||||
END
|
||||
ELSIF keyCode = 28 THEN (* Enter *)
|
||||
ELSIF keyCode = 28 THEN (* Enter *)
|
||||
IF searchOpened & (searchText # "") THEN
|
||||
notFound := ~T.findNext(text, BKW.value)
|
||||
END
|
||||
|
||||
@@ -86,7 +86,7 @@ commands: ; all commands must be in uppercase
|
||||
dd 'CWD', login_first, login_first, login_first, cmdCWD
|
||||
dd 'XCWD', login_first, login_first, login_first, cmdCWD
|
||||
dd 'DELE', login_first, login_first, login_first, cmdDELE
|
||||
; dd 'HELP', login_first, login_first, login_first, cmd_HELP
|
||||
dd 'HELP', login_first, login_first, login_first, cmdHELP
|
||||
dd 'LIST', login_first, login_first, login_first, cmdLIST
|
||||
; dd 'MDTM', login_first, login_first, login_first, cmd_MDTM
|
||||
; dd 'MKD', login_first, login_first, login_first, cmd_MKD
|
||||
@@ -1247,6 +1247,68 @@ cmdTYPE:
|
||||
sendFTP "200 Command ok"
|
||||
ret
|
||||
|
||||
;------------------------------------------------
|
||||
; "HELP"
|
||||
;
|
||||
; Provide help information.
|
||||
;
|
||||
;------------------------------------------------
|
||||
align 4
|
||||
cmdHELP:
|
||||
|
||||
lea edi, [ebp + thread_data.buffer]
|
||||
mov eax, '214 '
|
||||
stosd
|
||||
mov eax, 'Help'
|
||||
stosd
|
||||
mov ax, ': '
|
||||
stosw
|
||||
|
||||
mov esi, commands ; pointer to commands table
|
||||
|
||||
.next_command:
|
||||
cmp byte [esi], 0 ; end of table?
|
||||
je .list_done
|
||||
|
||||
; Copy command name (4 bytes), skip null bytes
|
||||
mov ecx, 4
|
||||
.copy_name:
|
||||
mov al, [esi]
|
||||
test al, al
|
||||
jz .skip_null
|
||||
stosb
|
||||
.skip_null:
|
||||
inc esi
|
||||
loop .copy_name
|
||||
|
||||
; Add space after command name
|
||||
mov al, ' '
|
||||
stosb
|
||||
|
||||
; Skip the four address pointers (16 bytes)
|
||||
add esi, 16
|
||||
jmp .next_command
|
||||
|
||||
.list_done:
|
||||
; Remove trailing space (if any)
|
||||
dec edi
|
||||
; Add CRLF
|
||||
mov ax, 0x0a0d ; \r\n
|
||||
stosw
|
||||
xor al, al ; null terminator
|
||||
stosb
|
||||
|
||||
; Calculate length
|
||||
lea edx, [ebp + thread_data.buffer]
|
||||
sub edi, edx
|
||||
|
||||
; Send response
|
||||
mcall send, [ebp + thread_data.socketnum], edx, edi
|
||||
; Also log to console
|
||||
invoke con_write_asciiz, edx
|
||||
|
||||
ret
|
||||
|
||||
;------------------------------------------------
|
||||
; "USER"
|
||||
;
|
||||
|
||||
Reference in New Issue
Block a user