summary refs log tree commit diff
path: root/bin (follow)
Commit message (Collapse)AuthorAge
* Move hilex out of hilex directoryJune McEnroe2021-01-12
|
* Consolidate hilex formatters into hilex.cJune McEnroe2021-01-12
|
* Remove hacky tagging from hilexJune McEnroe2021-01-12
| | | | God that makes the lexers so much simpler.
* Add htagml -iJune McEnroe2021-01-12
|
* Render tag index in HTMLJune McEnroe2021-01-12
|
* Add htagml -xJune McEnroe2021-01-12
|
* Prevent matching the same tag twiceJune McEnroe2021-01-12
|
* Process htagml file line by lineJune McEnroe2021-01-12
| | | | | | This simplifies some things, adds support for line number tag definitions, and should enable combining htagml with other preprocessors in the future.
* Split fields by tab onlyJune McEnroe2021-01-12
| | | | Also don't fail hard on non-forward-search definitions.
* List both Makefile and html.sh under README.7June McEnroe2021-01-12
|
* Add htagml exampleJune McEnroe2021-01-12
|
* Use mandoc and htagml for bin htmlJune McEnroe2021-01-12
|
* Add htagmlJune McEnroe2021-01-12
|
* Add c -t flag to print expression typeJune McEnroe2021-01-09
| | | | Also add missing float case.
* Clean up make lexerJune McEnroe2021-01-02
| | | | Still feels pretty messy though.
* Tag top-level typedefs the same way as function definitionsJune McEnroe2021-01-02
|
* Clean up order lexerJune McEnroe2021-01-01
|
* Remove empty comma statement from bitJune McEnroe2021-01-01
|
* Add ASCII control code names to bitJune McEnroe2020-12-31
|
* Simplify bit lexing and parsingJune McEnroe2020-12-31
| | | | Also print the value of each expression separated by commas.
* Print octal for 8 bits in bitJune McEnroe2020-12-30
|
* Add unary & to bitJune McEnroe2020-12-30
| | | | Also unary + and fix precedence of unary -.
* Support unary + in orderJune McEnroe2020-12-30
| | | | Missed this because operator(7) just doesn't list it, oddly.
* Add postfix $ operator to bitJune McEnroe2020-12-30
|
* Add make lexerJune McEnroe2020-12-29
| | | | | This is kind of a mess and needs to be cleaned up against more careful reading of the make grammar.
* Clean up C lexerJune McEnroe2020-12-29
| | | | This ordering of rules feels much cleaner.
* Clean up hilex code somewhatJune McEnroe2020-12-29
|
* Match lex/yacc %% %{ %} lines as MacroJune McEnroe2020-12-29
|
* Match top-level C definitions as IdentifierTagJune McEnroe2020-12-29
|
* Match C type declarations as IdentifierTagJune McEnroe2020-12-29
|
* Match function-like macro definitions as IdentifierTagJune McEnroe2020-12-29
|
* Reconfigure C macro start conditionsJune McEnroe2020-12-29
|
* Document HTML class namesJune McEnroe2020-12-29
|
* Rename Tag class to IdentifierTagJune McEnroe2020-12-29
|
* Change HTML class from hi to hilexJune McEnroe2020-12-29
| | | | You can tell I was just copying the HTML code huh.
* Add hilex HTML outputJune McEnroe2020-12-29
|
* Add hilex manual pageJune McEnroe2020-12-29
|
* Match Objective-C #import in C lexerJune McEnroe2020-12-29
|
* Add hilex IRC formatterJune McEnroe2020-12-28
|
* Generate Tag tokens for mdoc headingsJune McEnroe2020-12-28
|
* Add mdoc lexerJune McEnroe2020-12-28
|
* Lex strings inside macrosJune McEnroe2020-12-28
|
* Set H_SETUNIQUEJune McEnroe2020-12-28
|
* Add initial version of hilexJune McEnroe2020-12-28
| | | | | | | | | | hilex is meant to replace hi, based on lex rather than a mess of overlapping regexps. I want to preserve hi's tagging abilities, but that will require some amount of parsing/post-processing, which I'm not sure how to approach yet. Macro lexing for C still needs work, as I want to match strings and comments inside macros.
* Remove 1shJune McEnroe2020-12-23
|
* Fix dash Makefile compatibility with BSD makeJune McEnroe2020-12-23
|
* Fix multi-line prompts when right prompts are usedJune McEnroe2020-12-23
| | | | | | editline does not render a multi-line PS1 correctly when RPS1 is also set. To work around this, return only the last line of the cached prompt to editline, and print the leading lines separately inside setprompt.
* Add RPS1 and RPS2 right prompt variablesJune McEnroe2020-12-23
|
* Cache the expanded prompt for editlineJune McEnroe2020-12-23
| | | | | | | | | | | | | | | | | | | Previously, the prompt would be expanded every time editline called the getprompt callback. I think the code may have been written assuming that editline only calls getprompt once per prompt, but it may actually call it many times, for instance every time you type backspace. This results not only in slower editing from expanding complex prompts repeatedly, it also consumes more and more stack memory each time getprompt is called. This can be seen by setting PS1 to some command substitution, typing many characters at the prompt, then holding backspace and observing memory usage. Thankfully all this stack memory is freed between prompts by the stackmark calls around el_gets. This change causes prompt expansion to always happen in the setprompt call, as it would when editline is disabled, and a cached copy of the prompt is saved for getprompt to return every time editline calls it. Since getprompt is no longer doing expansion, the stackmark calls surrounding el_gets can be removed.
* Bind libedit's secret filename completion functionJune McEnroe2020-12-22
| | | | | | | | | | Check if the FreeBSD (and by extension macOS) _el_fn_sh_complete version of the function exists, which does shell escaping of completed filenames before _el_fn_complete learned to. Tab is bound after calling el_set() and el_source() since the default bindings set tab to something else, and it should always be filename completion in the shell.