TODO (2867B)
1 # -*- mode: org -*- 2 #+PROPERTY: COOKIE_DATA todo recursive 3 4 * Useful resources 5 - Lua5.1 6 - [[http://www.lua.org/manual/5.1/manual.html#8][bnf syntax]] 7 - [[http://www.lua.org/manual/5.1/index.html#index][function index]] 8 - Lua5.2 9 - [[http://www.lua.org/manual/5.2/manual.html#9][syntax]] 10 - [[http://www.lua.org/manual/5.2/#index][function index]] 11 12 13 * TODO Fontify function parameters as variable names 14 * TODO Fontify variable names in line-continuation statements 15 - local 16 foo,bar,baz = xyz,xyyz,xyyz 17 - function xyzzy( 18 foo, 19 bar, 20 baz 21 ) 22 23 * TODO left-shift parenthesis that closes function parameter block 24 local foobar = function( 25 param1, 26 param2, 27 param3 28 ) 29 dosmth() 30 end 31 32 * TODO issue #33 33 a = 34 { 35 } 36 b = 37 { 38 } 39 40 * TODO finish works in lua-compat branch for Emacs21/Emacs22 41 42 * TODO put text property 'lua-last-stmt-begin 43 - continuation-line detection becomes a one-liner 44 - multiline fontification becomes easier 45 - beginning-of-defun is a one-liner 46 47 - if property value is a marker, it will get updated on each edit, 48 that's not necessary and might cause performance impact 49 - if property value is an integer, it needs to be updated before use 50 1. `buffer-access-fontify-functions' / `buffer-access-fontified-property' 51 2. maintain `stmt-begin-up-to-date-pos' point 52 - after-change function sets `stmt-begin-up-to-date-pos' to 53 (line-beginning-position) 54 - (defun get-stmt-beginning-pos (pos) ...) 55 - (when (< stmt-begin-up-to-date-pos pos) 56 ... 57 (setq stmt-begin-up-to-date-pos pos)) 58 - return property at position pos 59 60 * TODO Support line-continuation statements [0/2] 61 - [ ] assignments 62 x,y = long_value, 63 other_long_value 64 - [ ] `for ... do' operators 65 66 * TODO update site [0/2] 67 ** TODO reuse section-aware template 68 ** TODO add section for release downloading 69 70 * TODO [#C] Improve lua-prefix-key machinery [0/2] 71 - [ ] add docs 72 - [ ] improve setting prefix-key 73 Currently, prefix-key is parsed from a macro string (which may 74 contain more than one key) and all keys but the first one are 75 silently removed. Maybe there's a better way to do it. 76 77 * DONE Fix braces/parens that reduce indent by const offset 78 this causes wrong behavior when indented block was 79 anchored to first line, e.g. 80 my_func( hello, 81 world 82 ) 83 84 * DONE lua-mark-all-multiline-literals [5/5] 85 - [X] process --[[ as multiline comment 86 - [X] process ---[[ as single-line comment 87 distinguish by syntax state of last dash before square bracket 88 - [X] don't recognize [[ in comments or literals 89 - [X] extend region backwards if BEGIN is inside multiline literal 90 - [X] don't change buffer-modified-p state 91 92 * TODO [#C] Redo syntax engine using semantic/wisent