ed

[hare] The standard editor
Log | Files | Refs | README | LICENSE

DateCommit messageAuthorFiles+-
2024-05-19 23:55handle signalsByron Torres3+14-5
2024-05-18 23:41upgrade for-eachByron Torres3+45-87
2024-03-20 12:09history: keep cursor within boundsCurtis Arthaud1+7-1
2024-03-17 22:12add missing assert_noaddrs()Byron Torres1+6-0
2024-03-17 22:16simplify filename logicByron Torres1+1-1
2024-03-17 22:12tidyByron Torres1+1-1
2024-03-17 16:11cmd_write(): dont set modified when write to shellByron Torres1+2-2
2024-03-17 14:19fix WarnBufferModified logicCurtis Arthaud3+6-12
2024-03-16 09:24add wq commandCurtis Arthaud3+32-2
2024-03-16 09:06fix substitute escaped linefeed extra blank lineCurtis Arthaud1+0-6
2024-01-29 22:14tidy TODOsByron Torres1+1-2
2024-01-22 23:11add hist_tidy(); fix redoByron Torres6+67-27
2024-01-21 01:08impl POSIX undo behaivourByron Torres4+63-10
2024-01-21 00:16undo progressByron Torres1+4-2
2024-01-19 18:22rm type PrinterByron Torres1+0-2
2024-01-18 10:47undo progressByron Torres3+26-8
2024-01-17 22:01commentsByron Torres1+6-2
2024-01-17 22:00discard hist of no-op commandsByron Torres1+13-4
2024-01-17 21:23undo progressByron Torres3+29-43
2024-01-16 23:49add cmd_undo(), history.ha, full undo history implByron Torres6+88-5
2024-01-15 22:41tidy, rename iter -> tByron Torres3+115-116
2024-01-15 22:21cmd_substitute(): error on NoMatchByron Torres1+7-0
2024-01-15 22:06cmd_substitute(): impl multiline replacement textByron Torres2+78-25
2024-01-14 22:33cmd_mark(): improve suffix storageByron Torres2+4-4
2024-01-14 22:27cmd_substitute(): handle flagsByron Torres2+62-23
2024-01-11 12:54printlistline(): use precision modifierByron Torres1+1-1
2024-01-11 09:06rename invglobal -> vglobalByron Torres1+4-4
2024-01-11 01:08main.ha: handle first edit errorByron Torres1+3-2
2024-01-11 00:10main.ha: tidyByron Torres1+1-1
2024-01-10 23:13cmd_substitute(): fix cursorByron Torres1+2-0
2024-01-10 23:12impr variable namesByron Torres1+8-8
2024-01-10 22:50rm InputMode; tidy main.haByron Torres2+10-14
2024-01-10 19:18rename prev_shcmd -> lastshcmdByron Torres2+4-4
2024-01-10 02:07printlistline(): print octal non-printable charsByron Torres1+6-1
2024-01-10 01:12cmd_join(): fix cursor bugByron Torres1+2-2
2024-01-10 00:53add printmode()Byron Torres3+48-14
2024-01-09 23:31add error.haByron Torres4+81-77
2024-01-09 23:13refine filenameByron Torres2+4-21
2024-01-09 19:46interactive -> iaByron Torres2+8-8
2024-01-09 11:33add regex search pattern memoryByron Torres5+37-10
2024-01-09 00:50add print.haByron Torres3+69-67
2024-01-09 00:41cmd_write(): impl ! shell commandsByron Torres4+89-72
2024-01-08 20:30amend cmd_shellescape() % parsingByron Torres1+13-9
2024-01-08 20:16cmd_shellescape(): propagate os::exec::errorByron Torres1+3-3
2024-01-08 18:48hotfix import bugByron Torres1+1-0
2024-01-08 18:48WIP: import os::exec::error bugByron Torres2+6-3
2024-01-08 18:47progressByron Torres2+0-2
2024-01-08 18:35cmd_read(): impl ! shell commandsByron Torres1+24-8
2024-01-07 21:44add filename()Byron Torres4+30-52
2024-01-07 21:40tidy command.haByron Torres1+132-150
2024-01-07 20:12tidy interaction.haByron Torres1+2-2
2024-01-07 20:12tidy execute.haByron Torres1+25-39
2024-01-07 20:02tidy address.haByron Torres1+17-18
2024-01-07 19:59tidy and simplify global matchedByron Torres1+2-4
2024-01-07 19:55tidy main.ha, parse.haByron Torres2+65-68
2024-01-07 01:24progressByron Torres1+1-3
2024-01-07 01:07add cmd_invglobal(), global.haByron Torres3+199-181
2024-01-07 00:21rename Command.cmdname to Command.nameByron Torres4+13-13
2024-01-07 00:17add cmd_globalByron Torres4+121-15
2024-01-06 21:15fix text input memByron Torres2+4-4
2024-01-06 21:08add error for invalid global subcmdByron Torres3+34-17
2024-01-06 16:42progress, globalByron Torres2+21-9
2024-01-06 16:19impl & repeat commandByron Torres3+41-11
2024-01-06 13:25cmd_global_interactive() progressByron Torres1+13-13
2024-01-06 13:08Makefile: add execute.ha; less debugByron Torres3+8-7
2024-01-06 13:03add cmd_edit_forced; if block styleByron Torres1+29-18
2024-01-06 12:43add cmd_quit, Quit; for styleByron Torres4+89-18
2024-01-06 11:22progress; parse input stream; struct{} styleByron Torres5+138-118
2024-01-05 23:38make help list globalByron Torres1+9-8
2024-01-05 23:21progressByron Torres9+194-125
2023-12-28 16:50use Error again; draft global commandsByron Torres2+118-44
2023-12-28 11:47print parsing errorsByron Torres1+3-2
2023-12-28 11:38unify ParseError and CmdError for strerrorByron Torres3+64-45
2023-12-28 07:42rename Mode to InputModeByron Torres1+8-8
2023-12-28 07:31add strerror; fix write; propagate buffer errorsByron Torres3+36-32
2023-11-02 12:29update per upstream hare stdlibByron Torres1+13-13
2023-11-02 07:19update per upstream hareCurtis Arthaud3+5-3
2023-06-25 03:30PascalCase typesByron Torres7+199-199
2023-05-30 20:05update for getopt::printusage and function typesByron Torres3+3-3
2023-04-25 17:03update for regex::result_freeallByron Torres1+1-1
2023-04-11 00:07rearrange command and execute codeByron Torres2+90-91
2023-04-11 00:00fix invalid const assignmentByron Torres1+1-3
2023-02-20 13:26add cmd_substitute() draftByron Torres1+45-1
2023-02-20 00:57add cmd_append(), cmd_change(), cmd_insert()Byron Torres3+76-6
2023-02-19 23:46complete cmd_shellescape()Byron Torres2+56-1
2023-02-19 19:27add cmd_shellescape() draftByron Torres1+17-1
2023-02-19 18:18fix allocationByron Torres1+2-2
2023-02-19 18:17rm freeByron Torres1+1-1
2023-02-19 18:16simplifiy cmd_edit()Byron Torres1+3-5
2023-02-19 18:16optimize buf_wipetrash()Byron Torres1+4-4
2023-02-19 17:35add more debuggingByron Torres3+12-4
2022-12-18 22:34cmdfn -> cmdnameByron Torres2+69-87
2022-12-18 02:30parse progressByron Torres3+237-41
2022-12-17 01:36add cmd_list(), printer functionsByron Torres3+83-8
2022-12-17 01:36add missing &cmd_shellescape; styleByron Torres2+2-2
2022-12-14 03:36add addr_regex(), /regex/ addressesByron Torres4+90-10
2022-12-13 22:47progressByron Torres1+8-10
2022-12-13 05:50add cmd_copy(), invaliddestination; fix cmd_move()Byron Torres3+64-8
2022-12-13 04:59add cmd_move(); handle errors, invalid addressesByron Torres5+99-58
2022-12-13 00:29add buf_insert(), cmd_join()Byron Torres3+39-2
2022-12-12 23:50add cmd_mark()Byron Torres2+37-2
2022-12-12 04:35fix cmd_linenumber()Byron Torres1+0-1
2022-12-12 04:05fix lineoffset; add debug()Byron Torres4+13-8
2022-12-12 03:34add assert_nonzero()Byron Torres1+14-2
2022-12-11 03:18reorganise command code, create stubsByron Torres2+160-118
2022-12-11 02:30remove .cmd from session{}Byron Torres2+20-20
2022-12-10 01:34commandtype -> commandfnByron Torres3+42-135
2022-12-10 01:16progressByron Torres5+194-136
2022-12-02 16:22progressByron Torres6+763-38
2022-11-22 20:46add command.ha, util.ha, cmd_edit()Byron Torres5+121-10
2022-11-22 00:53add buffer.haByron Torres3+30-15
2022-11-22 00:21add main.ha, Makefile, .gitignoreByron Torres3+89-0
2022-11-22 00:09add LICENSEByron Torres1+674-0
2022-11-22 00:09initial commitByron Torres1+9-0
2024-05-19 23:55handle signalsByron Torres2+14-1
2024-05-18 23:41upgrade for-eachByron Torres3+45-87
2024-03-20 12:09history: keep cursor within boundsCurtis Arthaud1+7-1
2024-03-17 22:12add missing assert_noaddrs()Byron Torres1+6-0
2024-03-17 22:16simplify filename logicByron Torres1+1-1
2024-03-17 22:12tidyByron Torres1+1-1
2024-03-17 16:11cmd_write(): dont set modified when write to shellByron Torres1+2-2
2024-03-17 14:19fix WarnBufferModified logicCurtis Arthaud3+6-12
2024-03-16 09:24add wq commandCurtis Arthaud3+32-2
2024-03-16 09:06fix substitute escaped linefeed extra blank lineCurtis Arthaud1+0-6
2024-01-29 22:14tidy TODOsByron Torres1+1-2
2024-01-22 23:11add hist_tidy(); fix redoByron Torres6+67-27
2024-01-21 01:08impl POSIX undo behaivourByron Torres4+63-10
2024-01-21 00:16undo progressByron Torres1+4-2
2024-01-19 18:22rm type PrinterByron Torres1+0-2
2024-01-18 10:47undo progressByron Torres3+26-8
2024-01-17 22:01commentsByron Torres1+6-2
2024-01-17 22:00discard hist of no-op commandsByron Torres1+13-4
2024-01-17 21:23undo progressByron Torres3+29-43
2024-01-16 23:49add cmd_undo(), history.ha, full undo history implByron Torres6+88-5
2024-01-15 22:41tidy, rename iter -> tByron Torres3+115-116
2024-01-15 22:21cmd_substitute(): error on NoMatchByron Torres1+7-0
2024-01-15 22:06cmd_substitute(): impl multiline replacement textByron Torres2+78-25
2024-01-14 22:33cmd_mark(): improve suffix storageByron Torres2+4-4
2024-01-14 22:27cmd_substitute(): handle flagsByron Torres2+62-23
2024-01-11 12:54printlistline(): use precision modifierByron Torres1+1-1
2024-01-11 09:06rename invglobal -> vglobalByron Torres1+4-4
2024-01-11 01:08main.ha: handle first edit errorByron Torres1+3-2
2024-01-11 00:10main.ha: tidyByron Torres1+1-1
2024-01-10 23:13cmd_substitute(): fix cursorByron Torres1+2-0
2024-01-10 23:12impr variable namesByron Torres1+8-8
2024-01-10 22:50rm InputMode; tidy main.haByron Torres2+10-14
2024-01-10 19:18rename prev_shcmd -> lastshcmdByron Torres2+4-4
2024-01-10 02:07printlistline(): print octal non-printable charsByron Torres1+6-1
2024-01-10 01:12cmd_join(): fix cursor bugByron Torres1+2-2
2024-01-10 00:53add printmode()Byron Torres3+48-14
2024-01-09 23:31add error.haByron Torres4+81-77
2024-01-09 23:13refine filenameByron Torres2+4-21
2024-01-09 19:46interactive -> iaByron Torres2+8-8
2024-01-09 11:33add regex search pattern memoryByron Torres5+37-10
2024-01-09 00:50add print.haByron Torres3+69-67
2024-01-09 00:41cmd_write(): impl ! shell commandsByron Torres4+89-72
2024-01-08 20:30amend cmd_shellescape() % parsingByron Torres1+13-9
2024-01-08 20:16cmd_shellescape(): propagate os::exec::errorByron Torres1+3-3
2024-01-08 18:48hotfix import bugByron Torres1+1-0
2024-01-08 18:48WIP: import os::exec::error bugByron Torres2+6-3
2024-01-08 18:47progressByron Torres2+0-2
2024-01-08 18:35cmd_read(): impl ! shell commandsByron Torres1+24-8
2024-01-07 21:44add filename()Byron Torres4+30-52
2024-01-07 21:40tidy command.haByron Torres1+132-150
2024-01-07 20:12tidy interaction.haByron Torres1+2-2
2024-01-07 20:12tidy execute.haByron Torres1+25-39
2024-01-07 20:02tidy address.haByron Torres1+17-18
2024-01-07 19:59tidy and simplify global matchedByron Torres1+2-4
2024-01-07 19:55tidy main.ha, parse.haByron Torres2+65-68
2024-01-07 01:24progressByron Torres1+1-3
2024-01-07 01:07add cmd_invglobal(), global.haByron Torres3+199-181
2024-01-07 00:21rename Command.cmdname to Command.nameByron Torres4+13-13
2024-01-07 00:17add cmd_globalByron Torres4+121-15
2024-01-06 21:15fix text input memByron Torres2+4-4
2024-01-06 21:08add error for invalid global subcmdByron Torres3+34-17
2024-01-06 16:42progress, globalByron Torres2+21-9
2024-01-06 16:19impl & repeat commandByron Torres3+41-11
2024-01-06 13:25cmd_global_interactive() progressByron Torres1+13-13
2024-01-06 13:08Makefile: add execute.ha; less debugByron Torres3+8-7
2024-01-06 13:03add cmd_edit_forced; if block styleByron Torres1+29-18
2024-01-06 12:43add cmd_quit, Quit; for styleByron Torres4+89-18
2024-01-06 11:22progress; parse input stream; struct{} styleByron Torres5+138-118
2024-01-05 23:38make help list globalByron Torres1+9-8
2024-01-05 23:21progressByron Torres9+194-125
2023-12-28 16:50use Error again; draft global commandsByron Torres2+118-44
2023-12-28 11:47print parsing errorsByron Torres1+3-2
2023-12-28 11:38unify ParseError and CmdError for strerrorByron Torres3+64-45
2023-12-28 07:42rename Mode to InputModeByron Torres1+8-8
2023-12-28 07:31add strerror; fix write; propagate buffer errorsByron Torres3+36-32
2023-11-02 12:29update per upstream hare stdlibByron Torres1+13-13
2023-11-02 07:19update per upstream hareCurtis Arthaud3+5-3
2023-06-25 03:30PascalCase typesByron Torres7+199-199
2023-05-30 20:05update for getopt::printusage and function typesByron Torres3+3-3
2023-04-25 17:03update for regex::result_freeallByron Torres1+1-1
2023-04-11 00:07rearrange command and execute codeByron Torres2+90-91
2023-04-11 00:00fix invalid const assignmentByron Torres1+1-3
2023-02-20 13:26add cmd_substitute() draftByron Torres1+45-1
2023-02-20 00:57add cmd_append(), cmd_change(), cmd_insert()Byron Torres3+76-6
2023-02-19 23:46complete cmd_shellescape()Byron Torres2+56-1
2023-02-19 19:27add cmd_shellescape() draftByron Torres1+17-1
2023-02-19 18:18fix allocationByron Torres1+2-2
2023-02-19 18:17rm freeByron Torres1+1-1
2023-02-19 18:16simplifiy cmd_edit()Byron Torres1+3-5
2023-02-19 18:16optimize buf_wipetrash()Byron Torres1+4-4
2023-02-19 17:35add more debuggingByron Torres3+12-4
2022-12-18 22:34cmdfn -> cmdnameByron Torres2+69-87
2022-12-18 02:30parse progressByron Torres3+237-41
2022-12-17 01:36add cmd_list(), printer functionsByron Torres3+83-8
2022-12-17 01:36add missing &cmd_shellescape; styleByron Torres2+2-2
2022-12-14 03:36add addr_regex(), /regex/ addressesByron Torres4+90-10
2022-12-13 22:47progressByron Torres1+8-10
2022-12-13 05:50add cmd_copy(), invaliddestination; fix cmd_move()Byron Torres3+64-8
2022-12-13 04:59add cmd_move(); handle errors, invalid addressesByron Torres5+99-58
2022-12-13 00:29add buf_insert(), cmd_join()Byron Torres3+39-2
2022-12-12 23:50add cmd_mark()Byron Torres2+37-2
2022-12-12 04:35fix cmd_linenumber()Byron Torres1+0-1
2022-12-12 04:05fix lineoffset; add debug()Byron Torres4+13-8
2022-12-12 03:34add assert_nonzero()Byron Torres1+14-2
2022-12-11 03:18reorganise command code, create stubsByron Torres2+160-118
2022-12-11 02:30remove .cmd from session{}Byron Torres2+20-20
2022-12-10 01:34commandtype -> commandfnByron Torres3+42-135
2022-12-10 01:16progressByron Torres5+194-136
2022-12-02 16:22progressByron Torres6+763-38
2022-11-22 20:46add command.ha, util.ha, cmd_edit()Byron Torres5+121-10
2022-11-22 00:53add buffer.haByron Torres3+30-15
2022-11-22 00:21add main.ha, Makefile, .gitignoreByron Torres3+89-0
2022-11-22 00:09add LICENSEByron Torres1+674-0
2022-11-22 00:09initial commitByron Torres1+9-0
2024-01-10 22:50rm InputMode; tidy main.haByron Torres2+9-13
2024-01-10 19:18rename prev_shcmd -> lastshcmdByron Torres2+4-4
2024-01-10 02:07printlistline(): print octal non-printable charsByron Torres1+6-1
2024-01-10 01:12cmd_join(): fix cursor bugByron Torres1+2-2
2024-01-10 00:53add printmode()Byron Torres3+48-14
2024-01-09 23:31add error.haByron Torres4+81-77
2024-01-09 23:13refine filenameByron Torres2+4-21
2024-01-09 19:46interactive -> iaByron Torres2+8-8
2024-01-09 11:33add regex search pattern memoryByron Torres5+37-10
2024-01-09 00:50add print.haByron Torres3+69-67
2024-01-09 00:41cmd_write(): impl ! shell commandsByron Torres4+89-72
2024-01-08 20:30amend cmd_shellescape() % parsingByron Torres1+13-9
2024-01-08 20:16cmd_shellescape(): propagate os::exec::errorByron Torres1+3-3
2024-01-08 18:48hotfix import bugByron Torres1+1-0
2024-01-08 18:48WIP: import os::exec::error bugByron Torres2+6-3
2024-01-08 18:47progressByron Torres2+0-2
2024-01-08 18:35cmd_read(): impl ! shell commandsByron Torres1+24-8
2024-01-07 21:44add filename()Byron Torres4+30-52
2024-01-07 21:40tidy command.haByron Torres1+132-150
2024-01-07 20:12tidy interaction.haByron Torres1+2-2
2024-01-07 20:12tidy execute.haByron Torres1+25-39
2024-01-07 20:02tidy address.haByron Torres1+17-18
2024-01-07 19:59tidy and simplify global matchedByron Torres1+2-4
2024-01-07 19:55tidy main.ha, parse.haByron Torres2+65-68
2024-01-07 01:24progressByron Torres1+1-3
2024-01-07 01:07add cmd_invglobal(), global.haByron Torres3+199-181
2024-01-07 00:21rename Command.cmdname to Command.nameByron Torres4+13-13
2024-01-07 00:17add cmd_globalByron Torres4+121-15
2024-01-06 21:15fix text input memByron Torres2+4-4
2024-01-06 21:08add error for invalid global subcmdByron Torres3+34-17
2024-01-06 16:42progress, globalByron Torres2+21-9
2024-01-06 16:19impl & repeat commandByron Torres3+41-11
2024-01-06 13:25cmd_global_interactive() progressByron Torres1+13-13
2024-01-06 13:08Makefile: add execute.ha; less debugByron Torres3+8-7
2024-01-06 13:03add cmd_edit_forced; if block styleByron Torres1+29-18
2024-01-06 12:43add cmd_quit, Quit; for styleByron Torres4+89-18
2024-01-06 11:22progress; parse input stream; struct{} styleByron Torres5+138-118
2024-01-05 23:38make help list globalByron Torres1+9-8
2024-01-05 23:21progressByron Torres9+194-125
2023-12-28 16:50use Error again; draft global commandsByron Torres2+118-44
2023-12-28 11:47print parsing errorsByron Torres1+3-2
2023-12-28 11:38unify ParseError and CmdError for strerrorByron Torres3+64-45
2023-12-28 07:42rename Mode to InputModeByron Torres1+8-8
2023-12-28 07:31add strerror; fix write; propagate buffer errorsByron Torres3+36-32
2023-11-02 12:29update per upstream hare stdlibByron Torres1+13-13
2023-11-02 07:19update per upstream hareCurtis Arthaud3+5-3
2023-06-25 03:30PascalCase typesByron Torres7+199-199
2023-05-30 20:05update for getopt::printusage and function typesByron Torres3+3-3
2023-04-25 17:03update for regex::result_freeallByron Torres1+1-1
2023-04-11 00:07rearrange command and execute codeByron Torres2+90-91
2023-04-11 00:00fix invalid const assignmentByron Torres1+1-3
2023-02-20 13:26add cmd_substitute() draftByron Torres1+45-1
2023-02-20 00:57add cmd_append(), cmd_change(), cmd_insert()Byron Torres3+76-6
2023-02-19 23:46complete cmd_shellescape()Byron Torres2+56-1
2023-02-19 19:27add cmd_shellescape() draftByron Torres1+17-1
2023-02-19 18:18fix allocationByron Torres1+2-2
2023-02-19 18:17rm freeByron Torres1+1-1
2023-02-19 18:16simplifiy cmd_edit()Byron Torres1+3-5
2023-02-19 18:16optimize buf_wipetrash()Byron Torres1+4-4
2023-02-19 17:35add more debuggingByron Torres3+12-4
2022-12-18 22:34cmdfn -> cmdnameByron Torres2+69-87
2022-12-18 02:30parse progressByron Torres3+237-41
2022-12-17 01:36add cmd_list(), printer functionsByron Torres3+83-8
2022-12-17 01:36add missing &cmd_shellescape; styleByron Torres2+2-2
2022-12-14 03:36add addr_regex(), /regex/ addressesByron Torres4+90-10
2022-12-13 22:47progressByron Torres1+8-10
2022-12-13 05:50add cmd_copy(), invaliddestination; fix cmd_move()Byron Torres3+64-8
2022-12-13 04:59add cmd_move(); handle errors, invalid addressesByron Torres5+99-58
2022-12-13 00:29add buf_insert(), cmd_join()Byron Torres3+39-2
2022-12-12 23:50add cmd_mark()Byron Torres2+37-2
2022-12-12 04:35fix cmd_linenumber()Byron Torres1+0-1
2022-12-12 04:05fix lineoffset; add debug()Byron Torres4+13-8
2022-12-12 03:34add assert_nonzero()Byron Torres1+14-2
2022-12-11 03:18reorganise command code, create stubsByron Torres2+160-118
2022-12-11 02:30remove .cmd from session{}Byron Torres2+20-20
2022-12-10 01:34commandtype -> commandfnByron Torres3+42-135
2022-12-10 01:16progressByron Torres5+194-136
2022-12-02 16:22progressByron Torres6+763-38
2022-11-22 20:46add command.ha, util.ha, cmd_edit()Byron Torres5+121-10
2022-11-22 00:53add buffer.haByron Torres3+30-15
2022-11-22 00:21add main.ha, Makefile, .gitignoreByron Torres3+89-0
2022-11-22 00:09add LICENSEByron Torres1+674-0
2022-11-22 00:09initial commitByron Torres1+9-0