Sublime Forum

SublimeText4 does not suggest all words for autocomplete within other scopes

#1

Hello,

I have this unanswered question on StackOverflow: https://stackoverflow.com/q/68160737/2342558
Can you please answer it on StackOverflow?

Thanks

I report it here:


Autocomplete doesn’t work like it did in the previous version.

Now, if I type inside a query string (or inside a javascript block), it doesn’t suggest in the list the words/variables used outside of that scope.

<?php
    $var1 = 'testVar';
    $query = "INSERT INTO myTable SET col1 = '$v'";
?>

When I type $v it no longer suggests var1 . The same if I type “myTab” in it.

If I type v outside of " " the first auto-complete option is var1 .

I need autocomplete to suggest all words/names used in all scopes of the open file, as it did before this update.

I haven’t touched any settings for years …

0 Likes

#2

Auto-complete generally won’t show for comments and strings. This is controlled by the "auto_complete_selector" setting.

0 Likes

#3

I set this but the problem persist:
“auto_complete_selector”: “meta.tag, source”

Did you tried my code?

0 Likes

#4

What exactly I should put inside auto_complete_selector?

Thanks

0 Likes

#5

"auto_complete_selector" just controls, whether auto-completion popup is displayed automatically while typing or not.

It doesn’t control which content is provided.

Completions for $var1 and myTable are so called word completions picked up from buffer.

If no other plugin is supressing those by returning sublime.INHIBIT_WORD_COMPLETIONS, it’s up to ST’s internal heuristics to decide what to suggest when.

Just a wild guess, but maybe it’s due to query string being of source.sql while the rest is source.php.

It would be logical to prevent words from within and source.sql scope to be suggested within source.php and vice versa.

EDIT:

With all the functions being suggested already, it might also be possible the quite low priority word completions are dropped due to limit of maximum sugestions being hit. IIRC, such a limit was added during ST4 dev cycle.

Typing v between INSERT and INTO suggests var1 as expected. … so I guess, word completions (and snippets) just get burried if too much completion candidates are present.

0 Likes

#6

Thanks for the answer.

How to know if there is one doing that?

If I’m writing PHP code, very often there are sql querys inside double quotes, so in this case is logical to autocomplete from source.php scope inside source.sql.
This was the normal behaviour before updating ST. I didn’t install any plugin or changed anything after the update, so the change is all due to this update.

This case is impossible.
Following these steps it doesn’t suggest word completion for $var1:

  • open a new tab on ST

  • paste this code:

    <?php $var1 = 'testVar'; $query = "INSERT INTO myTable SET col1 = '$v'"; ?>
  • type v or $v inside double quotes

  • var1 isn’t suggested.
    In this case the buffer is pretty empty.

Which version are you using? Mine is build 4107.

These are my default settings:

// Place your settings in the file "Packages/User/Preferences.sublime-settings",
	// which overrides the settings in here.
	//
	// Settings may also be placed in syntax-specific setting files, for
	// example, in Packages/User/Python.sublime-settings for python files.
	{
		// Sets the colors used within the text area.
		// The value "auto" will switch between the "light_color_scheme" and
		// "dark_color_scheme" based on the operating system appearance.
		"color_scheme": "Mariana.sublime-color-scheme",

		// Controls the "color_scheme" when set to "auto"
		"light_color_scheme": "Breakers.sublime-color-scheme",
		"dark_color_scheme": "Mariana.sublime-color-scheme",

		// Note that the font_face and font_size are overridden in the platform
		// specific settings file, for example, "Preferences (Linux).sublime-settings".
		// Because of this, setting them here will have no effect: you must set them
		// in your User File Preferences.
		"font_face": "",
		"font_size": 10,

		// Valid options on all platforms are:
		//  - "no_bold": Disables bold text
		//  - "no_italic": Disables italic text
		// Antialiasing options:
		//  - "no_antialias": Disables antialiasing
		//  - "gray_antialias": Uses grayscale antialiasing instead of subpixel
		// Ligature options:
		//  - "no_liga": Disables standard ligatures (OpenType liga feature)
		//  - "no_clig": Disables contextual ligatures (OpenType clig feature)
		//  - "no_calt": Disables contextual alternatives (OpenType calt feature)
		//  - "dlig": Enables discretionary ligatures (OpenType dlig feature)
		//  - "ss01": Enables OpenType stylistic set 1. Can enable sets 1 to 10
		//        by changing the last two digits.
		// Windows-only options:
		//  - "directwrite": (default) Use DirectWrite for font rendering
		//  - "gdi": Use GDI for font rendering
		//  - "dwrite_cleartype_classic": Only applicable to "directwrite" mode,
		//        should render fonts similar to traditional GDI
		//  - "dwrite_cleartype_natural": Only applicable to "directwrite" mode,
		//        should render fonts similar to ClearType "natural quality" GDI
		//  - "subpixel_antialias": Force ClearType antialiasing when disabled
		//        at system level
		// Mac-only options:
		//  - "no_round": Don't round glyph widths for monospace fonts when
		//        "font_size" is small.
		"font_options": [],
		// Font options for theme text. Valid options are the same as
		// "font_options", except "no_bold" and "no_italic" are not supported
		"theme_font_options": [],

		// Characters that are considered to separate words
		"word_separators": "./\\()\"'-:,.;<>~!@#$%^&*|+=[]{}`~?",

		// Set to false to prevent line numbers being drawn in the gutter
		"line_numbers": true,

		// Set to false to hide the gutter altogether
		"gutter": true,

		// Spacing between the gutter and the text
		"margin": 4,

		// Fold buttons are the triangles shown in the gutter to fold regions of text
		"fold_buttons": true,

		// Hides the fold buttons unless the mouse is over the gutter
		"fade_fold_buttons": true,

		// Indicate modified lines in the gutter
		// - true: Enables modified line indicators on all files
		// - "auto": Enables modified line indicators on tracked files within Git
		// - false: Disables modified line indicators
		"mini_diff": true,

		// Columns in which to display vertical rulers
		"rulers": [],

		// Set to true to turn spell checking on by default
		"spell_check": false,

		// The number of spaces a tab is considered equal to
		"tab_size": 4,

		// Set to true to insert spaces when tab is pressed
		"translate_tabs_to_spaces": false,

		// If translate_tabs_to_spaces is true, use_tab_stops will make tab and
		// backspace insert/delete up to the next tabstop
		"use_tab_stops": true,

		// Set to false to disable detection of tabs vs. spaces on load
		"detect_indentation": true,

		// Calculates indentation automatically when pressing enter
		"auto_indent": true,

		// Makes auto indent a little smarter, e.g., by indenting the next line
		// after an if statement in C. Requires auto_indent to be enabled.
		"smart_indent": true,

		// Adds whitespace up to the first open bracket when indenting. Requires
		// auto_indent to be enabled.
		"indent_to_bracket": false,

		// Trims white space added by auto_indent when moving the caret off the
		// line.
		"trim_automatic_white_space": true,

		// Disables horizontal scrolling if enabled.
		// May be set to true, false, or "auto", where it will be disabled for
		// source code, and otherwise enabled.
		"word_wrap": "auto",

		// Set to a value other than 0 to force wrapping at that column rather than
		// the window width. See "wrap_width_style" for extra options.
		"wrap_width": 0,

		// Controls how the "wrap_width" setting is applied. The following options
		// are available:
		// - "constant": Always wrap at exactly the wrap width.
		// - "min": Wrap at the wrap width or less if there is less space available.
		"wrap_width_style": "constant",

		// Set to false to prevent word wrapped lines from being indented to the same
		// level
		"indent_subsequent_lines": true,

		// Draws text centered in the window rather than left aligned
		"draw_centered": false,

		// Controls auto pairing of quotes, brackets etc
		"auto_match_enabled": true,

		// Automatically close HTML and XML tags when </ is entered.
		"auto_close_tags": true,

		// Word list to use for spell checking
		"dictionary": "Packages/Language - English/en_US.dic",

		// Sets which scopes are checked for spelling errors
		"spelling_selector": "markup.raw, source string.quoted - punctuation - meta.preprocessor.include, source comment - source comment.block.preprocessor, -(source, constant, keyword, storage, support, variable, markup.underline.link, meta.tag)",

		// Set to true to draw a border around the visible rectangle on the minimap.
		// The color of the border will be determined by the "minimap_border" key
		// in the color scheme
		"draw_minimap_border": false,

		// Always visualise the viewport on the minimap, as opposed to only
		// showing it on mouse over
		"always_show_minimap_viewport": false,

		// If enabled, will highlight any line with a caret
		"highlight_line": false,

		// If enabled, will highlight the gutter for any line with a caret
		"highlight_gutter": true,

		// If enabled, will highlight the line number in the gutter for any line
		// with a caret depending on the color scheme
		"highlight_line_number": true,

		// Valid values are "smooth", "phase", "blink" and "solid". Previous
		// versions of Sublime Text used "smooth" by default.
		"caret_style": "solid",

		// These settings control the size of the caret
		"caret_extra_top": 4,
		"caret_extra_bottom": 4,
		"caret_extra_width": 1,

		// When enabled, the caret will be drawn as a rectangle, using the width
		// of the current character
		"block_caret": false,

		// Set to false to disable underlining the brackets surrounding the caret
		"match_brackets": true,

		// Set to false if you'd rather only highlight the brackets when the caret is
		// next to one
		"match_brackets_content": true,

		// Set to false to not highlight square brackets. This only takes effect if
		// match_brackets is true
		"match_brackets_square": true,

		// Set to false to not highlight curly brackets. This only takes effect if
		// match_brackets is true
		"match_brackets_braces": true,

		// Set to false to not highlight angle brackets. This only takes effect if
		// match_brackets is true
		"match_brackets_angle": false,

		// Enable visualization of the matching tag in HTML and XML
		"match_tags": true,

		// Highlights other occurrences of the currently selected text
		"match_selection": true,

		// Additional spacing at the top of each line, in pixels
		"line_padding_top": 0,

		// Additional spacing at the bottom of each line, in pixels
		"line_padding_bottom": 0,

		// Set to false to disable scrolling past the end of the buffer.
		// On Mac, this value is overridden in the platform specific settings, so
		// you'll need to place this line in your user settings to override it.
		//
		// This setting may also be set to a number between 0.0 and 1.0 to specify
		// how much scrolling past the end of the buffer should be allowed. 0.5
		// scrolls halfway and 0.0 is the same as false.
		"scroll_past_end": true,

		// Set the number of context lines to show when scrolling to reveal. This
		// affects all selection changes, like selection dragging, page-up/page-down
		// and moving the caret.
		"scroll_context_lines": 0,

		// This controls what happens when pressing up or down when on the first
		// or last line.
		// On Mac, this value is overridden in the platform specific settings, so
		// you'll need to place this line in your user settings to override it.
		"move_to_limit_on_up_down": false,

		// Controls when white space is drawn. Any of the following options may be
		// combined:
		// - "selection": Draw white space under the current selection.
		// - "leading": Draw any white space between the beginning of a line and the
		//              first character.
		// - "enclosed": Draw white space enclosed by other characters.
		// - "trailing": Draw white space following the last character on a line.
		// - "isolated": Draw white space on lines containing no other characters.
		// - "all": All of the above, ie. always draw white space.
		//
		// These options may be further refined by appending any of the following
		// separated by an underscore:
		// - "none": Don't draw this kind of white space.
		// - "tabs": Only draw tabs here.
		// - "spaces": Only draw spaces here.
		// - "mixed": Only draw white space that does not match the indentation
		//            style. For example if "translate_tabs_to_spaces" is true only
		//            draw tabs.
		// - "mixed_tabs": Like "mixed" but only draw tabs.
		// - "mixed_spaces": Like "mixed" but only draw spaces.
		// - "all": Draw both tabs and spaces. This is the default.
		//
		// Note that options are applied in sequence. So a later option may override
		// an earlier one.
		//
		// Examples:
		// - ["selection", "trailing", "isolated"]:
		//     Draw white space at the end of any lines and under the selection.
		//
		// - ["all_tabs", "selection"]:
		//     Draw tabs anywhere and any white space under the selection.
		//
		// - ["all_mixed"]:
		//     Draw any white space that does not match the indentation style.
		//
		// - ["leading_mixed", "isolated_mixed"]:
		//     Draw any indentation that does not match the indentation style.
		//
		// - ["selection_mixed_tabs"]:
		//     Draw only tabs under the selection and only if the indentation style
		//     is spaces.
		//
		// - ["all_tabs", "selection"]:
		//     Draw all tabs and any white space under the selection.
		//
		// - ["all", "selection_none"]:
		//     Inverse of the default. Draw white space everywhere except under the
		//     selection.
		"draw_white_space": ["selection"],

		// Controls how non-ascii white space is drawn.
		// - "none": Draw unicode white space verbatim, eg. hiding zero-width
		//           spaces.
		// - "punctuation": Draw codepoints of unicode white space defined as
		//                  punctuation. This includes NBSP, but excludes the CJK
		//                  Ideographic Space.
		// - "all": Draw codepoints of all non-ascii space characters.
		"draw_unicode_white_space": "punctuation",

		// Control characters (or white space if enabled) can be drawn as either hex
		// or using their abbreviation:
		// - "hex": Draw characters using their hex encoding, ie. <0xA0>
		// - "names": Draw characters using their abbreviation, ie. <NBSP>
		"control_character_style": "hex",

		// Controls what type of columns selection description ("Line X, Column Y"
		// in the status bar) uses:
		// - "virtual": Count virtual columns. Tabs count as their width in spaces.
		// - "real": Count real columns. Tabs count as one column.
		"selection_description_column_type": "virtual",

		// Set to false to turn off the indentation guides.
		// The color and width of the indent guides may be customized by editing
		// the corresponding .tmTheme file, and specifying the colors "guide",
		// "activeGuide" and "stackGuide"
		"draw_indent_guides": true,

		// Controls how the indent guides are drawn. Options may be combined, with
		// valid options being:
		//  - "draw_normal" - will draw plain indent guides for every indentation
		//    group
		//  - "draw_active" - will draw indent guides for the group
		//    containing the caret in a different color
		//  - "draw_active_single" - will draw the right-most indent guide in the
		//    group containing the caret in a different color
		//  - "solid" - can be combined with any of the draw_* options to draw
		//    solid instead of stippled lines
		"indent_guide_options": ["draw_normal"],

		// Controls where trailing white space is removed on save.
		// - "none": Do not remove any trailing white space on save.
		// - "all": Remove all trailing white space on save.
		// - "not_on_caret": Only remove white space that won't affect the caret.
		//                   When used in conjunction with "save_on_focus_lost" and
		//                   certain desktop environments that frequently make the
		//                   application lose focus this avoids the caret jumping
		//                   around a lot.
		"trim_trailing_white_space_on_save": "none",

		// Only trim white space on save for the parts of a file that have been
		// modified by you. If there is trailing white space in other parts of the
		// file they are left alone.
		"trim_only_modified_white_space": true,

		// Set to true to ensure the last line of the file ends in a newline
		// character when saving
		"ensure_newline_at_eof_on_save": false,

		// Set to true to automatically save files when switching to a different file
		// or application
		"save_on_focus_lost": false,

		// The encoding to use when the encoding can't be determined automatically.
		// ASCII, UTF-8 and UTF-16 encodings will be automatically detected.
		"fallback_encoding": "Western (Windows 1252)",

		// Encoding used when saving new files, and files opened with an undefined
		// encoding (e.g., plain ascii files). If a file is opened with a specific
		// encoding (either detected or given explicitly), this setting will be
		// ignored, and the file will be saved with the encoding it was opened
		// with.
		"default_encoding": "UTF-8",

		// Files containing null bytes are opened as hexadecimal by default
		"enable_hexadecimal_encoding": true,

		// Determines what character(s) are used to terminate each line in new files.
		// Valid values are 'system' (whatever the OS uses), 'windows' (CRLF) and
		// 'unix' (LF only).
		"default_line_ending": "system",

		// When enabled, hovering over a word will show a popup listing all
		// possible locations for the definition symbol. Requires index_files.
		"show_definitions": true,

		// When enabled, pressing tab will insert the best matching completion.
		// When disabled, tab will only trigger snippets or insert a tab.
		// Shift+tab can be used to insert an explicit tab when tab_completion is
		// enabled.
		"tab_completion": true,

		// Enable auto complete to be triggered automatically when typing.
		"auto_complete": true,

		// The maximum file size where auto complete will be automatically triggered.
		"auto_complete_size_limit": 4194304,

		// The delay, in ms, before the auto complete window is shown after typing
		"auto_complete_delay": 50,

		// Controls what scopes auto complete will be triggered in
		"auto_complete_selector": "meta.tag, source - comment - string.quoted.double.block - string.quoted.single.block - string.unquoted.heredoc",

		// Additional situations to trigger auto complete
		"auto_complete_triggers":
		[
			{"selector": "text.html, text.xml", "characters": "<"},
			{"selector": "punctuation.accessor", "rhs_empty": true},
		],

		// By default, auto complete will commit the current completion on enter.
		// This setting can be used to make it complete on tab instead.
		// Completing on tab is generally a superior option, as it removes
		// ambiguity between committing the completion and inserting a newline.
		"auto_complete_commit_on_tab": false,

		// Controls if auto complete is shown when snippet fields are active.
		// Only relevant if auto_complete_commit_on_tab is true.
		"auto_complete_with_fields": false,

		// Controls what happens when pressing the up key while the first item in
		// the auto complete window is selected: if false, the window is hidden,
		// otherwise the last item in the window is selected. Likewise for the
		// down key when the last item is selected.
		"auto_complete_cycle": false,

		// Auto complete will used indexed data to provide completions from other
		// files when this is enabled
		"auto_complete_use_index": true,

		// If previously-selected completions should be automatically selected
		"auto_complete_use_history": false,

		// Controls how the auto complete results are reordered when typing:
		// - "none" will fully reorder the results according to how well the
		//   completion matches the typed text.
		// - "some" will partially reorder the results, taking into account how
		//   well the completion matches whats typed, and likelihood of the
		//   completion.
		// - "strict" will never reorder the results.
		"auto_complete_preserve_order": "some",

		// Add trailing symbols (e.g., '.', '()') if the auto complete engine
		// thinks they're likely enough
		"auto_complete_trailing_symbols": false,

		// Add a space after completions if the auto complete engine thinks
		// they're likely enough
		"auto_complete_trailing_spaces": true,

		// Snippets will not be included in the auto complete when this is
		// false. They can still be triggered by typing their tab trigger in, and
		// pressing tab when auto complete is not showing.
		"auto_complete_include_snippets": true,

		// When this is set to false, snippets won't be present in the auto
		// complete dialog when typing, instead they'll only be shown in the auto
		// complete dialog when it's explicitly triggered
		"auto_complete_include_snippets_when_typing": true,

		// A list of wildcard patterns specifying which snippet files to ignore.
		// For example, to ignore all the default C++ snippets, set this to
		// ["C++/*"]
		"ignored_snippets": [],

		// These settings hide various parts of the UI automatically when typing.
		// Moving the mouse will show them again.
		"auto_hide_menu": false,
		"auto_hide_tabs": false,
		"auto_hide_status_bar": false,

		// Related to auto_hide_tabs, if this is enabled, tabs will be momentarily
		// displayed when switching files. Tabs will automatically hidden upon
		// resuming typing or after a fixed amount of time.
		"reveal_tabs_with_timeout": false,

		// If true, when typing the mouse pointer/cursor will be hidden. Moving the
		// pointer will unhide it. This setting has no effect on macOS.
		"hide_pointer_while_typing": true,

		// By default, shift+tab will only unindent if the selection spans
		// multiple lines. When pressing shift+tab at other times, it'll insert a
		// tab character - this allows tabs to be inserted when tab_completion is
		// enabled. Set this to true to make shift+tab always unindent, instead of
		// inserting tabs.
		"shift_tab_unindent": false,

		// If true, the copy and cut commands will operate on the current line
		// when the selection is empty, rather than doing nothing.
		"copy_with_empty_selection": true,

		// If true, the selected text will be copied into the find panel when it's
		// shown.
		// On Mac, this value is overridden in the platform specific settings.
		"find_selected_text": true,

		// When auto_find_in_selection is enabled, the "Find in Selection" flag will
		// be enabled automatically when multiple lines of text are selected.
		// "find_only" or "replace_only" may also be used to only enable this
		// behavior for the find or replace panel respectively.
		"auto_find_in_selection": false,

		// This determines whether the find panel is closed when the "Find All"
		// or "Replace All" buttons are pressed. Note this does not change the
		// keybinding behavior.
		"close_find_after_find_all": true,
		"close_find_after_replace_all": true,

		// Whether to highlight find results in the scrollbar
		"highlight_find_results_in_scrollbar": true,

		"find_in_files_max_result_size": 16777216, // 16MB

		"drag_text": true,

		"theme": "auto",

		"light_theme": "Default.sublime-theme",
		"dark_theme": "Default Dark.sublime-theme",

		"themed_title_bar": true,

		"file_tab_style": "rounded",

		"inactive_sheet_dimming": true,

		"scroll_speed": 1.0,

		"tree_animation_enabled": true,

		"animation_enabled": true,

		"highlight_modified_tabs": false,

		"show_tab_close_buttons": true,

		"show_tab_close_buttons_on_left": false,

		"bold_folder_labels": false,

		"adaptive_dividers": false,

		"popup_shadows": true,

		"native_tabs": "system",

		"overlay_scroll_bars": "system",

		"enable_tab_scrolling": true,

		"hide_tab_scrolling_buttons": false,

		"hide_new_tab_button": false,

		"show_sidebar_button": true,

		"show_git_status_in_status_bar": true,

		"show_encoding": false,

		"show_line_endings": false,

		"show_indentation": true,

		"show_syntax": true,

		"ui_scale": 0.0,

		"hardware_acceleration": "none",

		"hot_exit": "always",

		"remember_full_screen": false,

		"remember_workspace": true,

		"shell_environment": true,

		"reload_file_on_change": true,

		"always_prompt_for_file_reload": false,

		"close_deleted_files": true,

		"open_files_in_new_window": "never",

		"create_window_at_startup": true,

		"show_navigation_bar": true,

		"close_windows_when_empty": false,

		"show_full_path": true,

		"show_rel_path": false,

		// Show "project - file" or "file - project" in the title bar.
		"show_project_first": false,

		// Shows the Build Results panel when building. If set to false, the Build
		// Results can be shown via the Tools/Build Results menu.
		"show_panel_on_build": true,

		// Shows build errors just under the line on which they occur.
		"show_errors_inline": true,

		"show_git_status": true,

		"allow_git_home_dir": false,

		"git_diff_target": "index",

		"sublime_merge_path": "",

		"preview_on_click": true,

		"console_max_history_lines": 3000,

		// folder_exclude_patterns and file_exclude_patterns control which files
		// are listed in folders on the side bar. These can also be set on a per-
		// project basis.
		"folder_exclude_patterns": [".svn", ".git", ".hg", "CVS", ".Trash", ".Trash-*"],
		"file_exclude_patterns": ["*.pyc", "*.pyo", "*.exe", "*.dll", "*.obj","*.o", "*.a", "*.lib", "*.so", "*.dylib", "*.ncb", "*.sdf", "*.suo", "*.pdb", "*.idb", ".DS_Store", ".directory", "desktop.ini", "*.class", "*.psd", "*.db", "*.sublime-workspace"],
		// These files will still show up in the side bar, but won't be included in
		// Goto Anything or Find in Files
		"binary_file_patterns": ["*.jpg", "*.jpeg", "*.png", "*.gif", "*.ttf", "*.tga", "*.dds", "*.ico", "*.eot", "*.pdf", "*.swf", "*.jar", "*.zip"],

		"index_files": true,
		"index_workers": 0,
		"index_exclude_gitignore": true,
		"index_skip_unknown_extensions": true,
		"index_exclude_patterns": ["*.log"],
		"vintage_start_in_command_mode": false,
		"vintage_use_clipboard": false,
		"vintage_ctrl_keys": false,
		"relative_line_numbers": false,
		"ignored_packages": ["Vintage"]
	}

These are my customized settings:

{
	"always_prompt_for_file_reload": true,
	"auto_close_tags": false,
	"auto_match_enabled": false,
	"bold_folder_labels": true,
	"detect_indentation": false,
	"drag_text": false,
	"enable_tab_scrolling": false,
	"enable_tab_shrinking": false,
	"font_size": 10,
	"highlight_line": true,
	"highlight_modified_tabs": true,
	"ignored_packages":
	[
		"Vintage",
	],
	"preview_on_click": false,
	"scroll_speed": 0,
	"shift_tab_unindent": true,
	"show_encoding": true,
	"show_full_path": false,
	"smart_indent": false,
	"theme": "Adaptive.sublime-theme",
	"trim_automatic_white_space": false,
	
	"caret_style": "smooth",
}

These are the plugins installed:
immagine

I’m using Ubuntu LTS.

(I deleted some comments from the default settings due to the limitation of the maximum length of the forum text)

How can I solve my problem?

0 Likes

#7

You can’t

I am not blind, no need to bold the text.

I also understand coupling of sql vs. php.

Maybe bad wording, but this statement is of more general meaning with regards to possible impact of using different syntaxes in general. Doesn’t matter as it seems not to be the reason anywhay. So just forget it.

It’s not about number of defined functions in your code, but the overall amount of suggestions already provided by the panel. IIRC a core developer said something about at most 25 items or so, but I am not quite sure about the exact number.

Normally on bleeeeeding edge, so 4111. But behaves same with 4107.

It indeed doesn’t suggest it while typing v, but only when hitting ctrl+space explicitly INSERT | INTO.

grafik

It doesn’t help you out, I know.


Variables have always been word completions. Those are under core control, only. There is no suggestion how to fix it from users side, except probably trying LSP package and a php language server.

1 Like

#8

First, sorry for the blod text.

In any case, being due to the update, I consider it a core bug.
Where can I report it?

Thanks

0 Likes

#9

Core bugs are tracked via https://github.com/sublimehq/sublime_text/issues

ST4 provides a menu item for it via “Help > Report a Bug”.

Many users struggle with this changed behavior. It seems to hit all kinds of syntaxes which use variables (or words of interest for completion) which don’t start or end with letters or numbers.

One reported for CSS:

There are other complaints about --var no longer being completed in CSS as well.

The main issue is ST not to respect word_separators when looking for word completions. Here is a similar/related issue …

0 Likes

#10

Filed the issue:

0 Likes

#11

Currently still no response?

0 Likes