@@ -1221,13 +1221,20 @@ end
12211221
12221222--- @async
12231223local function tryWord (state , position , triggerCharacter , results )
1224+ if triggerCharacter == ' ('
1225+ or triggerCharacter == ' #'
1226+ or triggerCharacter == ' ,'
1227+ or triggerCharacter == ' {' then
1228+ return
1229+ end
12241230 local text = state .lua
12251231 local offset = guide .positionToOffset (state , position )
12261232 local finish = lookBackward .skipSpace (text , offset )
12271233 local word , start = lookBackward .findWord (text , offset )
12281234 local startPos
12291235 if not word then
1230- return nil
1236+ word = ' '
1237+ startPos = position
12311238 else
12321239 startPos = guide .offsetToPosition (state , start - 1 )
12331240 end
@@ -1241,17 +1248,17 @@ local function tryWord(state, position, triggerCharacter, results)
12411248 else
12421249 local parent , oop = findParent (state , startPos )
12431250 if parent then
1244- if not hasSpace then
1245- checkField (state , word , startPos , position , parent , oop , results )
1246- end
1251+ checkField (state , word , startPos , position , parent , oop , results )
12471252 elseif isFuncArg (state , position ) then
12481253 checkProvideLocal (state , word , startPos , results )
12491254 checkFunctionArgByDocParam (state , word , startPos , results )
12501255 else
12511256 local afterLocal = isAfterLocal (state , startPos )
1252- local stop = checkKeyWord (state , startPos , position , word , hasSpace , afterLocal , results )
1253- if stop then
1254- return
1257+ if triggerCharacter ~= nil then
1258+ local stop = checkKeyWord (state , startPos , position , word , hasSpace , afterLocal , results )
1259+ if stop then
1260+ return
1261+ end
12551262 end
12561263 if not hasSpace then
12571264 if afterLocal then
@@ -1265,7 +1272,7 @@ local function tryWord(state, position, triggerCharacter, results)
12651272 end
12661273 end
12671274 end
1268- if not hasSpace then
1275+ if not hasSpace and ( # results == 0 or word ~= ' ' ) then
12691276 checkCommon (state , word , position , results )
12701277 end
12711278 end
@@ -1282,15 +1289,15 @@ local function trySymbol(state, position, results)
12821289 return nil
12831290 end
12841291 local startPos = guide .offsetToPosition (state , start )
1285- if symbol == ' .'
1286- or symbol == ' :' then
1287- local parent , oop = findParent (state , startPos )
1288- if parent then
1289- tracy .ZoneBeginN ' completion.trySymbol'
1290- checkField (state , ' ' , startPos , position , parent , oop , results )
1291- tracy .ZoneEnd ()
1292- end
1293- end
1292+ -- if symbol == '.'
1293+ -- or symbol == ':' then
1294+ -- local parent, oop = findParent(state, startPos)
1295+ -- if parent then
1296+ -- tracy.ZoneBeginN 'completion.trySymbol'
1297+ -- checkField(state, '', startPos, position, parent, oop, results)
1298+ -- tracy.ZoneEnd()
1299+ -- end
1300+ -- end
12941301 if symbol == ' (' then
12951302 checkFunctionArgByDocParam (state , ' ' , startPos , results )
12961303 end
0 commit comments