diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt
index 06fc829..8d8502a 100644
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -1,4 +1,4 @@
-*filetype.txt*	For Vim version 9.1.  Last change: 2024 Nov 14
+*filetype.txt*	For Vim version 9.1.  Last change: 2024 Dec 03
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -733,7 +733,6 @@
 re-source "javaformat.vim" for Vim versions greater than `8.2.1397`: >
 	runtime autoload/javaformat.vim
 <
-
 JSON-FORMAT						*ft-json-plugin*
 
 JSON filetype can be extended to use 'formatexpr' and "json.FormatExpr()"
@@ -745,6 +744,11 @@
 	import autoload 'dist/json.vim'
 	setl formatexpr=json.FormatExpr()
 
+LUA                                                     *ft-lua-plugin*
+
+You can enable folding of lua functions using |fold-expr| by: >
+
+	let g:lua_folding = 1
 
 MAIL							*ft-mail-plugin*
 
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 5e57f25..ad87006 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -7358,6 +7358,7 @@
 ft-lisp-syntax	syntax.txt	/*ft-lisp-syntax*
 ft-lite-syntax	syntax.txt	/*ft-lite-syntax*
 ft-lpc-syntax	syntax.txt	/*ft-lpc-syntax*
+ft-lua-plugin	filetype.txt	/*ft-lua-plugin*
 ft-lua-syntax	syntax.txt	/*ft-lua-syntax*
 ft-mail-plugin	filetype.txt	/*ft-mail-plugin*
 ft-mail.vim	syntax.txt	/*ft-mail.vim*
diff --git a/runtime/ftplugin/lua.vim b/runtime/ftplugin/lua.vim
index 80cbba7..22b9986 100644
--- a/runtime/ftplugin/lua.vim
+++ b/runtime/ftplugin/lua.vim
@@ -5,7 +5,7 @@
 " Contributor:		Dorai Sitaram <ds26@gte.com>
 "			C.D. MacEachern <craig.daniel.maceachern@gmail.com>
 "			Tyler Miller <tmillr@proton.me>
-" Last Change:		2024 Jan 14
+" Last Change:		2024 Dec 03
 
 if exists("b:did_ftplugin")
   finish
@@ -48,6 +48,64 @@
   let b:undo_ftplugin ..= " | unlet! b:browsefilter"
 endif
 
+if has("folding") && get(g:, "lua_folding", 0)
+  setlocal foldmethod=expr
+  setlocal foldexpr=LuaFold(v:lnum)
+  let b:lua_lasttick = -1
+  let b:undo_ftplugin ..= "|setl foldexpr< foldmethod< | unlet! b:lua_lasttick b:lua_foldlists"
+endif
+
+
+" The rest of the file needs to be :sourced only once per Vim session
+if exists('s:loaded_lua') || &cp
+  let &cpo = s:cpo_save
+  unlet s:cpo_save
+  finish
+endif
+let s:loaded_lua = 1
+
+let s:patterns = [
+      \ ['do', 'end'],
+      \ ['if\s+.+\s+then', 'end'],
+      \ ['repeat', 'until\s+.+'],
+      \ ['for\s+.+\s+do', 'end'],
+      \ ['while\s+.+\s+do', 'end'],
+      \ ['function.+', 'end'],
+      \ ['return\s+function.+', 'end'],
+      \ ['local\s+function\s+.+', 'end'],
+      \ ]
+
+function! LuaFold(lnum) abort
+  if b:lua_lasttick == b:changedtick
+    return b:lua_foldlists[a:lnum-1]
+  endif
+  let b:lua_lasttick = b:changedtick
+
+  let b:lua_foldlists = []
+  let foldlist = []
+  let buf = getline(1, '$')
+  for line in buf
+    for t in s:patterns
+      let tagopen = '\v^\s*'..t[0]..'\s*$'
+      let tagclose = '\v^\s*'..t[1]..'\s*$'
+      if line =~# tagopen
+        call add(foldlist, t)
+        break
+      elseif line =~# tagclose
+        if len(foldlist) > 0 && line =~# foldlist[-1][1]
+          call remove(foldlist, -1)
+        else
+          let foldlist = []
+        endif
+        break
+      endif
+    endfor
+    call add(b:lua_foldlists, len(foldlist))
+  endfor
+
+  return lua_foldlists[a:lnum-1]
+endfunction
+
 let &cpo = s:cpo_save
 unlet s:cpo_save
 
