diff --git a/script/config/config.lua b/script/config/config.lua
index 9d3f8085e2ba06120a6de5b6eaf557066feb0bfc..91f0a00b88f026c2239cc9f99d78cd06b33dd233 100644
--- a/script/config/config.lua
+++ b/script/config/config.lua
@@ -181,6 +181,7 @@ local Template = {
     ['Lua.completion.keywordSnippet']       = Type.String  >> 'Replace',
     ['Lua.completion.displayContext']       = Type.Integer >> 6,
     ['Lua.completion.workspaceWord']        = Type.Boolean >> true,
+    ['Lua.completion.showWord']             = Type.String  >> 'Enable',
     ['Lua.completion.autoRequire']          = Type.Boolean >> true,
     ['Lua.completion.showParams']           = Type.Boolean >> true,
     ['Lua.signatureHelp.enable']            = Type.Boolean >> true,
diff --git a/script/core/completion.lua b/script/core/completion.lua
index c5a375f5d953738b333e4de712c6ad572cb0b4a6..06219e74963235f0e1e1df29bb2badd5d279dd58 100644
--- a/script/core/completion.lua
+++ b/script/core/completion.lua
@@ -624,7 +624,14 @@ local function checkTableField(ast, word, start, results)
 end
 
 local function checkCommon(myUri, word, text, offset, results)
+    local showWord = config.get 'Lua.completion.showWord'
+    if showWord == 'Disable' then
+        return
+    end
     results.enableCommon = true
+    if showWord == 'Fallback' and #results ~= 0 then
+        return
+    end
     local used = {}
     for _, result in ipairs(results) do
         used[result.label:match '^[^(]*'] = true