Mercurial > vim
view runtime/ftplugin/logtalk.dict @ 34134:8ae680be2a51
runtime(ftplugin): Use "*" browsefilter pattern to match "All Files"
Commit: https://github.com/vim/vim/commit/93197fde0f1db09b1e495cf3eb14a8f42c318b80
Author: Doug Kearns <dougkearns@gmail.com>
Date: Sun Jan 14 20:59:02 2024 +0100
runtime(ftplugin): Use "*" browsefilter pattern to match "All Files"
Problem: The "*.*" browsefilter pattern only matches all files on
Windows (Daryl Lee)
Solution: Use "*" to filter on all platforms but keep "*.*" as the label
text on Windows. (Fixes #12685, Doug Kearns)
The *.* browsefilter pattern used to match "All Files" on Windows is a
legacy of the DOS 8.3 filename wildcard matching algorithm. For reasons
of backward compatibility this still works on Windows to match all
files, even those without an extension.
However, this pattern only matches filenames containing a dot on other
platforms. This often makes files without an extension difficult to
access from the file dialog, e.g., "Makefile"
On Windows it is still standard practice to use "*.*" for the filter
label so ftplugins should use "All Files (*.*)" on Windows and "All
Files (*)" on other platforms. This matches Vim's default browsefilter
values.
This commit also normalises the browsefilter conditional test to check
for the Win32 and GTK GUI features and an unset b:browsefilter.
closes: #12759
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 14 Jan 2024 21:15:03 +0100 |
parents | e1ae246924ee |
children |
line wrap: on
line source
abolish abolish_category abolish_events abolish_object abolish_protocol abs acos acyclic_term after alias always_true_or_false_goals arg asin asserta assertz atan atan2 atom atomic atom_chars atom_codes atom_concat atom_length at_end_of_stream bagof before built_in call callable calls catch catchall_catch category category_property ceiling char_code char_conversion clause clean close code_prefix coinduction coinductive compare complements complements_object compound conditionals conforms_to_protocol context context_switching_calls copy_term cos create_category create_logtalk_flag create_object create_protocol current_category current_char_conversion current_event current_input current_logtalk_flag current_object current_op current_output current_predicate current_prolog_flag current_protocol debug define_events deprecated discontiguous div domain_error duplicated_directives dynamic dynamic_declarations elif else encoding encoding_directive endif end_category end_object end_protocol engines ensure_loaded error evaluation_error events existence_error exp expand_goal expand_term export extends extends_category extends_object extends_protocol fail false findall float float_fractional_part float_integer_part floor flush_output forall forward functor get_byte get_char get_code goal_expansion ground halt hook if ignore implements implements_protocol imports imports_category include info initialization instantiates instantiates_class instantiation_error integer keysort lambda_variables log logtalk_compile logtalk_library_path logtalk_load logtalk_load_context logtalk_make logtalk_make_target_action max meta_non_terminal meta_predicate min missing_directives mod mode modules multifile nl nonvar number numbervars number_chars number_codes object object_property once one one_or_error one_or_more op open optimize parameter peek_byte peek_char peek_code permission_error phrase portability predicate_property private prolog_compatible_version prolog_compiler prolog_dialect prolog_loader prolog_version protected protocol protocol_property public put_byte put_char put_code read read_term redefined_built_ins reexport reload rem repeat report representation_error resource_error retract retractall round scratch_directory self sender setof set_input set_logtalk_flag set_output set_prolog_flag set_stream_position sign sin singleton_variables sort source_data specializes specializes_class sqrt stream_property subsumes_term sub_atom suspicious_calls synchronized syntax_error system_error tabling tan term_expansion term_variables this threaded threaded_call threaded_cancel threaded_engine threaded_engine_create threaded_engine_destroy threaded_engine_fetch threaded_engine_next threaded_engine_next_reified threaded_engine_post threaded_engine_self threaded_engine_yield threaded_exit threaded_ignore threaded_notify threaded_once threaded_peek threaded_wait threads throw trivial_goal_fails true truncate type_error undefined_predicates underscore_variables unify_with_occurs_check uninstantiation_error unknown_entities unknown_predicates uses use_module var version write writeq write_canonical xor zero zero_or_error zero_or_more zero_or_one zero_or_one_or_error