Files
neovim/runtime/ftplugin
Christian Clason 1889c351fd vim-patch:7344024: runtime(java): Search type and method declarations with "&inc" and "&def"
=============== LIMITATIONS AND OBSERVATIONS ===============

* Remember that external-type names can only be found when
  they match filenames resolvable in "&path" with "import"
  declarations; load the source file of an external type to
  look up its nested types and sibling top types, if any.

* Strive to narrow the search by assigning only relevant
  pathnames for directories *or* an archive to "&path", e.g.
  ":set path-=/usr/include".

* Use "{Visual}gf" on fully-qualified names.

* Accept the fact that "&define" cannot contain end-of-line
  characters (":help definition-search").  A declaration
  whose matchable header is not contained within a line can
  be found iff all of its non-optional components belong to
  the same line; for types, such components are a keyword,
  e.g. "class", followed by a run of blank characters and
  an identifier, e.g. "Test"; for methods: a return type,
  e.g. "String", or a keyword "void", followed by a run of
  blank characters and an identifier, e.g. "toString", that
  is followed by "(".

* The members of the "java.lang" package are usually not
  associated with "import" declarations; to look up their
  declarations, load a source file for a member of that
  package, and then use, on a simple name of interest for
  a member, either "[-Ctrl-d" etc. for local declarations
  or "gf" for external declarations, assuming that "." *or*
  the appropriate pathname for a JDK archive is assigned to
  "&path".

* Follow the above instruction made for the "java.lang"
  members for any type whose simple name is not associated
  with an "import" declaration, i.e. a member type of the
  same package that is declared in another compilation unit.

* Append the "$" character to "&iskeyword" when looking up
  declarations of generated code.

See zzzyxwvut/java-vim#4.

closes: vim/vim#17281

7344024536

Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
2025-05-11 10:47:39 +02:00
..
2021-09-22 06:12:06 -07:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2024-10-15 20:50:21 +02:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2023-08-29 11:32:46 +02:00
2024-02-15 10:00:59 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2023-08-23 20:36:16 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2024-04-19 16:09:30 +02:00
2014-07-29 02:12:31 +00:00
2023-08-13 13:25:10 +01:00
2023-08-29 11:32:46 +02:00
2017-11-06 05:26:16 +01:00
2019-07-29 20:50:07 +02:00
2014-07-29 02:12:31 +00:00
2023-11-05 21:52:02 +01:00
2022-09-28 12:48:36 +02:00
2024-11-21 06:50:30 +08:00
2024-01-15 11:40:44 +01:00
2024-04-21 00:09:48 +02:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2023-06-11 12:40:22 +01:00
2017-11-06 05:26:16 +01:00
2022-09-18 15:20:20 +02:00
2017-04-28 21:13:55 +02:00
2017-11-06 05:26:16 +01:00
2024-05-20 00:13:40 +02:00
2023-10-27 10:06:52 +02:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2023-12-28 10:42:09 +01:00
2022-04-27 17:48:35 +02:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2022-07-02 11:06:03 +02:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2021-05-01 23:19:58 -04:00
2024-01-15 11:40:44 +01:00
2024-01-17 14:47:40 +00:00
2023-12-29 00:54:09 +01:00
2023-12-29 00:54:09 +01:00
2022-09-10 14:54:13 +02:00
2022-01-11 14:14:17 +01:00
2021-09-22 06:12:06 -07:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2022-09-28 12:48:36 +02:00
2024-01-15 11:40:44 +01:00
2023-08-21 20:32:28 +09:00
2016-05-25 21:05:01 -04:00
2016-05-03 20:59:26 +02:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2024-01-27 12:02:59 +01:00
2021-12-16 21:46:13 +01:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2021-04-27 09:21:31 -04:00
2024-01-15 11:40:44 +01:00
2022-09-10 14:54:13 +02:00
2024-01-15 11:40:44 +01:00
2021-08-15 11:02:19 +02:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2015-10-11 18:07:58 -04:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2023-04-23 15:22:55 +02:00
2023-02-03 09:18:18 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2023-12-16 15:57:22 +01:00
2018-10-29 10:01:44 +01:00
2023-05-15 09:38:32 +02:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2023-08-13 13:25:10 +01:00
2017-11-06 05:26:16 +01:00
2022-04-27 17:48:35 +02:00
2021-09-13 16:33:41 +02:00
2024-01-15 11:40:44 +01:00
2017-04-29 01:01:51 +02:00
2017-04-29 01:01:51 +02:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2017-11-07 23:07:03 +01:00
2023-04-23 15:22:55 +02:00
2023-08-29 11:32:46 +02:00
2024-05-20 14:43:12 +02:00
2023-08-13 13:25:10 +01:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2023-08-29 11:32:46 +02:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2022-10-17 08:19:48 +02:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2024-05-20 14:43:12 +02:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2023-08-13 11:53:51 +02:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2024-03-03 10:38:58 +01:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2022-04-27 17:48:35 +02:00
2024-03-03 10:38:58 +01:00
2017-11-06 05:26:16 +01:00
2024-03-03 10:38:58 +01:00
2024-01-15 11:40:44 +01:00
2021-05-01 22:29:02 -04:00
2023-08-24 11:33:06 +09:00
2024-01-15 11:40:44 +01:00
2023-12-29 00:54:09 +01:00
2023-12-15 10:30:13 +01:00
2023-08-29 11:32:46 +02:00
2017-11-06 05:26:16 +01:00
2017-04-28 21:13:55 +02:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2023-08-29 11:32:46 +02:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2023-08-24 11:33:06 +09:00
2024-01-15 11:40:44 +01:00
2022-10-17 08:19:48 +02:00
2024-05-18 08:57:07 +02:00
2024-01-15 11:40:44 +01:00
2022-07-30 15:48:32 +02:00
2021-05-01 23:19:57 -04:00
2021-04-27 09:21:34 -04:00
2017-11-06 05:26:16 +01:00
2022-06-15 09:20:32 +02:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2024-10-15 20:50:21 +02:00
2019-07-29 20:50:07 +02:00
2024-01-15 11:40:44 +01:00
2021-10-16 18:03:51 +02:00
2023-08-11 22:06:37 +02:00
2017-11-06 05:26:16 +01:00
2022-06-15 09:20:32 +02:00
2024-04-30 07:04:42 +08:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2023-08-09 22:34:02 +02:00
2017-11-06 05:26:16 +01:00
2023-08-29 11:32:46 +02:00
2024-05-20 14:43:12 +02:00
2024-01-15 11:40:44 +01:00
2022-09-18 15:20:20 +02:00
2024-05-20 22:58:05 +02:00
2024-01-15 11:40:44 +01:00
2014-12-30 13:51:39 +01:00
2022-07-02 11:06:03 +02:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2024-01-15 11:40:44 +01:00
2017-11-06 05:26:16 +01:00
2017-11-06 05:26:16 +01:00
2022-06-15 09:20:32 +02:00
2024-01-15 11:40:44 +01:00
2024-01-15 11:40:44 +01:00
2023-08-13 13:25:10 +01:00

The ftplugin directory is for Vim plugin scripts that are only used for a
specific filetype.

All files ending in .vim in this directory and subdirectories will be sourced
by Vim when it detects the filetype that matches the name of the file or
subdirectory.
For example, these are all loaded for the "c" filetype:

	c.vim
	c_extra.vim
	c/settings.vim

Note that the "_" in "c_extra.vim" is required to separate the filetype name
from the following arbitrary name.

The filetype plugins are only loaded when the ":filetype plugin" command has
been used.

The default filetype plugin files contain settings that 95% of the users will
want to use.  They do not contain personal preferences, like the value of
'shiftwidth'.

If you want to do additional settings, or overrule the default filetype
plugin, you can create your own plugin file.  See ":help ftplugin" in Vim.