92 lines
2.8 KiB
Org Mode
92 lines
2.8 KiB
Org Mode
# -*- mode: org -*-
|
|
#+PROPERTY: COOKIE_DATA todo recursive
|
|
|
|
* Useful resources
|
|
- Lua5.1
|
|
- [[http://www.lua.org/manual/5.1/manual.html#8][bnf syntax]]
|
|
- [[http://www.lua.org/manual/5.1/index.html#index][function index]]
|
|
- Lua5.2
|
|
- [[http://www.lua.org/manual/5.2/manual.html#9][syntax]]
|
|
- [[http://www.lua.org/manual/5.2/#index][function index]]
|
|
|
|
|
|
* TODO Fontify function parameters as variable names
|
|
* TODO Fontify variable names in line-continuation statements
|
|
- local
|
|
foo,bar,baz = xyz,xyyz,xyyz
|
|
- function xyzzy(
|
|
foo,
|
|
bar,
|
|
baz
|
|
)
|
|
|
|
* TODO left-shift parenthesis that closes function parameter block
|
|
local foobar = function(
|
|
param1,
|
|
param2,
|
|
param3
|
|
)
|
|
dosmth()
|
|
end
|
|
|
|
* TODO issue #33
|
|
a =
|
|
{
|
|
}
|
|
b =
|
|
{
|
|
}
|
|
|
|
* TODO finish works in lua-compat branch for Emacs21/Emacs22
|
|
|
|
* TODO put text property 'lua-last-stmt-begin
|
|
- continuation-line detection becomes a one-liner
|
|
- multiline fontification becomes easier
|
|
- beginning-of-defun is a one-liner
|
|
|
|
- if property value is a marker, it will get updated on each edit,
|
|
that's not necessary and might cause performance impact
|
|
- if property value is an integer, it needs to be updated before use
|
|
1. `buffer-access-fontify-functions' / `buffer-access-fontified-property'
|
|
2. maintain `stmt-begin-up-to-date-pos' point
|
|
- after-change function sets `stmt-begin-up-to-date-pos' to
|
|
(line-beginning-position)
|
|
- (defun get-stmt-beginning-pos (pos) ...)
|
|
- (when (< stmt-begin-up-to-date-pos pos)
|
|
...
|
|
(setq stmt-begin-up-to-date-pos pos))
|
|
- return property at position pos
|
|
|
|
* TODO Support line-continuation statements [0/2]
|
|
- [ ] assignments
|
|
x,y = long_value,
|
|
other_long_value
|
|
- [ ] `for ... do' operators
|
|
|
|
* TODO update site [0/2]
|
|
** TODO reuse section-aware template
|
|
** TODO add section for release downloading
|
|
|
|
* TODO [#C] Improve lua-prefix-key machinery [0/2]
|
|
- [ ] add docs
|
|
- [ ] improve setting prefix-key
|
|
Currently, prefix-key is parsed from a macro string (which may
|
|
contain more than one key) and all keys but the first one are
|
|
silently removed. Maybe there's a better way to do it.
|
|
|
|
* DONE Fix braces/parens that reduce indent by const offset
|
|
this causes wrong behavior when indented block was
|
|
anchored to first line, e.g.
|
|
my_func( hello,
|
|
world
|
|
)
|
|
|
|
* DONE lua-mark-all-multiline-literals [5/5]
|
|
- [X] process --[[ as multiline comment
|
|
- [X] process ---[[ as single-line comment
|
|
distinguish by syntax state of last dash before square bracket
|
|
- [X] don't recognize [[ in comments or literals
|
|
- [X] extend region backwards if BEGIN is inside multiline literal
|
|
- [X] don't change buffer-modified-p state
|
|
|
|
* TODO [#C] Redo syntax engine using semantic/wisent
|