mirror of
https://github.com/davidhalter/jedi-vim.git
synced 2025-12-07 03:04:30 +08:00
Document keybindings and options
All keybindings and options have at least a short description added to them. With this commit the general structure of a Vim help file is in place.
This commit is contained in:
190
doc/jedi-vim.txt
190
doc/jedi-vim.txt
@@ -10,14 +10,28 @@
|
||||
**now in beta testing phase**
|
||||
|
||||
==============================================================================
|
||||
CONTENTS *jedi-vim-contents*
|
||||
Contents *jedi-vim-contents*
|
||||
|
||||
1. Introduction |jedi-vim-introduction|
|
||||
2. Installation |jedi-vim-installation|
|
||||
3. Support |jedi-vim-support|
|
||||
4. Usage |jedi-vim-usage|
|
||||
5. Mappings |jedi-vim-mappings|
|
||||
5.1. Start completion |g:jedi#autocompletion_command|
|
||||
5.2. Go to definition |g:jedi#goto_command|
|
||||
5.3. Get original definition |g:jedi#get_definition_command|
|
||||
5.4. Show documentation |g:jedi#pydoc_command|
|
||||
5.5. Rename variables |g:jedi#rename_command|
|
||||
5.6. Show related names |g:jedi#related_names_command|
|
||||
6. Configuration |jedi-vim-configuration|
|
||||
6.1. auto_initialization |g:jedi#auto_initialization|
|
||||
6.2. auto_vim_configuration |g:jedi#auto_vim_configuration|
|
||||
6.3. popup_on_dot |g:jedi#popup_on_dot|
|
||||
6.4. popup_select_first |g:jedi#popup_select_first|
|
||||
6.5. auto_close_doc |g:jedi#auto_close_doc|
|
||||
6.6. show_function_definition |g:jedi#show_function_def|
|
||||
6.7. use_tabs_not_buffers |g:jedi#use_tabs_not_buffers|
|
||||
6.8. squelch_py_warning |g:jedi#squelch_py_warning|
|
||||
7. Contributing |jedi-vim-contributing|
|
||||
|
||||
|
||||
@@ -69,64 +83,176 @@ The autocompletion can be used with <Ctrl-Space>, if you want it to work with
|
||||
<Tab> you can use the Supertab plugin.
|
||||
|
||||
==============================================================================
|
||||
5. Mappings *jedi-vim-mappings*
|
||||
5. Key Bindings *jedi-vim-keybindings*
|
||||
|
||||
All keybindings can be mapped by setting the appropriate global option. For
|
||||
example, to set the keybinding for starting omnicompletion to <Tab> instead of
|
||||
<Ctrl-Space>, add the following setting to your .vimrc file: >
|
||||
|
||||
let g:jedi#autocompletion_command = "<tab>"
|
||||
|
||||
Note: If you have |g:jedi#auto_initialization| set to 0, you have to create
|
||||
the mappings yourself by calling the corresponding functions: >
|
||||
|
||||
" Using <tab> for omnicompletion
|
||||
inoremap <silent> <buffer> <tab> <c-x><c-o>
|
||||
" Use <localleader>r (by default <\-r>) for renaming
|
||||
nnoremap <silent> <buffer> <localleader>r :call jedi#rename()<cr>
|
||||
" etc.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.1. `g:jedi#autocompletion_command` *g:jedi#autocompletion_command*
|
||||
Function: n/a; see above
|
||||
Default: <Ctrl-Space> Start completion
|
||||
|
||||
Starts completion.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.2. `g:jedi#goto_command` *g:jedi#goto_command*
|
||||
Function: `jedi#goto()`
|
||||
Default: <leader>g Go to definition
|
||||
|
||||
This finds the first definition of the function/class under the cursor.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.3. `g:jedi#get_definition_command` *g:jedi#get_definition_command*
|
||||
Function: `jedi#get_definition()`
|
||||
Default: <leader>d Go to original definition
|
||||
|
||||
This command tries to find the original definition of the function/class under
|
||||
the cursor. If the function is e.g. imported from another module, this tries
|
||||
to follow the "import chain" to the end. It does not work with modules written
|
||||
in C.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.4. `g:jedi#pydoc` *g:jedi#pydoc_command*
|
||||
Function: `jedi#show_pydoc()`
|
||||
Default: <K> Show pydoc documentation
|
||||
|
||||
This shows the pydoc documentation for the item currently under the cursor.
|
||||
The documentation is opened in a horizontally split buffer.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.5. `g:jedi#rename_command` *g:jedi#rename_command*
|
||||
Function: `jedi#rename()`
|
||||
Default: <leader>r Rename variables
|
||||
|
||||
Jedi-Vim deletes the word currently under the cursor and puts Vim in insert
|
||||
mode, where the user is expected to enter the new variable name. Upon leaving
|
||||
insert mode, Jedi-Vim then renames all occurences of the old variable name
|
||||
with the new one. The number of renames is displayed in the command line.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
5.6. `g:jedi#related_names_command` *g:jedi#related_names_command*
|
||||
Function: `jedi#related_names()`
|
||||
Default: <leader>n Show related names
|
||||
|
||||
The quickfix window is populated with a list of all names which point to the
|
||||
definition of the name under the cursor.
|
||||
|
||||
==============================================================================
|
||||
6. Configuration *jedi-vim-configuration*
|
||||
|
||||
Jedi is by default automatically initialized. If you don't want that I suggest
|
||||
you disable the auto-initialization in your .vimrc: >
|
||||
------------------------------------------------------------------------------
|
||||
6.1. `g:jedi#auto_initialization` *g:jedi#auto_initialization*
|
||||
|
||||
let g:jedi#auto_initialization = 0
|
||||
Upon initialization, Jedi-Vim performs the following steps:
|
||||
|
||||
There are also some Vim options (like completeopt) which are automatically
|
||||
initialized, if you don't want that: >
|
||||
1. Set the current buffers 'omnifunc' to its own completion function
|
||||
`jedi#complete`
|
||||
2. Create mappings to commands specified in |jedi-vim-mappings|
|
||||
3. Call `jedi#configure_function_definition()` if
|
||||
`g:jedi#show_function_definition` is set
|
||||
|
||||
let g:jedi#auto_vim_configuration = 0
|
||||
You can disable the default initialization routine by setting this option to
|
||||
0. Beware that you have to perform the above steps yourself, though.
|
||||
|
||||
The goto is by default on <leader-g>. If you want to change that: >
|
||||
Options: 0 or 1
|
||||
Default: 1 (Perform automatic initialization)
|
||||
|
||||
let g:jedi#goto_command = "<leader>g"
|
||||
------------------------------------------------------------------------------
|
||||
6.2. `g:jedi#auto_vim_configuration` *g:jedi#auto_vim_configuration*
|
||||
|
||||
get_definition is by default on <leader-d>. If you want to change that: >
|
||||
Jedi-Vim sets 'completeopt' to `menuone,longest,preview` by default. It also
|
||||
remaps <Ctrl-C> to <Esc> in insert mode. If you want to keep your own
|
||||
configuration, disable this setting.
|
||||
|
||||
let g:jedi#get_definition_command = "<leader>d"
|
||||
Options: 0 or 1
|
||||
Default: 1 (Set 'completeopt' and mapping as described above)
|
||||
|
||||
Showing the pydoc is by default on <K>. If you want to change that: >
|
||||
------------------------------------------------------------------------------
|
||||
6.3. `g:jedi#popup_on_dot` *g:jedi#popup_on_dot*
|
||||
|
||||
let g:jedi#pydoc = "K"
|
||||
Jedi automatically starts completion upon typing a period in insert mode.
|
||||
|
||||
If you are a person who likes to use Vim buffers not tabs, you might want to
|
||||
put that in your .vimrc: >
|
||||
However, when working with large modules, this can slow down your typing flow
|
||||
since you have to wait for Jedi to parse the module and show the completion
|
||||
menu. By disabling this setting, completion is only started when you manually
|
||||
press the completion key.
|
||||
|
||||
let g:jedi#use_tabs_not_buffers = 0
|
||||
Options: 0 or 1
|
||||
Default: 1 (Start completion on typing a period)
|
||||
|
||||
Jedi automatically starts the completion if you type a dot, e.g. "str.", if
|
||||
you don't want this: >
|
||||
------------------------------------------------------------------------------
|
||||
6.4. `g:jedi#popup_select_first` *g:jedi#popup_select_first*
|
||||
|
||||
let g:jedi#popup_on_dot = 0
|
||||
Upon starting completion, Jedi-Vim can automatically select the first entry
|
||||
that pops up (but without actually inserting it).
|
||||
|
||||
Jedi selects the first line of the completion menu: for a better typing-flow and
|
||||
usually saves one keypress. >
|
||||
This leads to a better typing flow: As you type more characters, the entries
|
||||
in the completion menu are narrowed down. If they are narrowed down enough,
|
||||
you can just press <Return> to insert the first match.
|
||||
|
||||
let g:jedi#popup_select_first = 0
|
||||
Options: 0 or 1
|
||||
Default: 1 (Automatically select first completion entry)
|
||||
|
||||
There's some support for refactoring: >
|
||||
------------------------------------------------------------------------------
|
||||
6.5. `g:jedi#auto_close_doc` *g:jedi#auto_close_doc*
|
||||
|
||||
let g:jedi#rename_command = "<leader>r"
|
||||
When doing completion, Jedi-Vim shows the docstring of the currently selected
|
||||
item in a preview window. This window is by default closed when inserting a
|
||||
completion item.
|
||||
|
||||
And you can list all names that are related (have the same origin): >
|
||||
Set this to 1 to leave the preview window open. This could be useful if you
|
||||
want to browse longer docstrings.
|
||||
|
||||
let g:jedi#related_names_command = "<leader>n"
|
||||
Options: 0 or 1
|
||||
Default: 1 (Automatically close preview window upon finishing completion)
|
||||
|
||||
If you want to change the default autocompletion command: >
|
||||
------------------------------------------------------------------------------
|
||||
6.6. `g:jedi#show_function_definition` *g:jedi#show_function_def*
|
||||
|
||||
let g:jedi#autocompletion_command = "<c-space>"
|
||||
Vim-Jedi can display a small window detailing the arguments of the currently
|
||||
completed function and highlighting the currently selected argument. This can
|
||||
be disabled by setting this option to 0.
|
||||
|
||||
By default you get a window that displays the function definition you're
|
||||
currently in. If you don't want that: >
|
||||
Options: 0 or 1
|
||||
Default: 1 (Show function definition window)
|
||||
|
||||
let g:jedi#show_function_definition = "0"
|
||||
Note: This setting is ignored if |g:jedi#auto_initialization| is set to 0. In
|
||||
that case, if you want to see function definitions, you have to set this up
|
||||
manually by calling a function in your configuration file: >
|
||||
|
||||
call jedi#configure_function_definition()
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
6.7. `g:jedi#use_tabs_not_buffers` *g:jedi#use_tabs_not_buffers*
|
||||
|
||||
By default, Jedi-Vim opens a new tab if you use the "go to", "show
|
||||
definition", or "related names" commands. When you set this option to 0, they
|
||||
open in the current buffer instead.
|
||||
|
||||
Options: 0 or 1
|
||||
Default: 1 (Command output is put in a new tab)
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
6.8. `g:jedi#squelch_py_warning` *g:jedi#squelch_py_warning*
|
||||
|
||||
When Vim has not been compiled with +python, Jedi shows a warning to that
|
||||
effect and aborts loading itself. Set this to 1 to suppress that warning.
|
||||
|
||||
Options: 0 or 1
|
||||
Default: 0 (Warning is shown)
|
||||
|
||||
==============================================================================
|
||||
7. Contributing *jedi-vim-contributing*
|
||||
|
||||
Reference in New Issue
Block a user