Kite IntelliJ plugin

Related tags

IDEintellij-plugin
Overview

Handbook

Supported platforms

The Kite plugin supports the following environments:

  • PyCharm Community
  • PyCharm Professional
  • IntelliJ Community with the Python plugin
  • IntelliJ Ultimate with the Python plugin

All versions of these IDEs which are equal to or later than 2021.1 are supported:

  • 2021.3
  • 2021.2
  • 2021.1

Supported languages

The plugin’s features are only available in file types supported by the Kite engine:

  • Python. Support is only available with PyCharm or if the official Python plugin is enabled.

Startup

When you start your IDE for the first time after the Kite plugin was installed you will see a notification message.

Notification at startup

Click on Don't show this at startup to disable the message when your IDE starts.

Statusbar

This is the Kite icon in the lower right corner which displays the current status of the Kite integration.

States:

  • Blue (or white in Darcula mode) -- The Kite Engine is available and functioning properly.
  • Gray -- The Kite Engine is unavailable because there’s either no file opened or the current file is unsupported.
  • Red -- The Kite Engine is unavailable or there was an error during the last interaction with the engine.

Click on the icon to see more details about the current status of the Kite Engine and details about your Kite account.

Status panel showing Status panel showing that Kite is unavailable

Working with files

The Kite plugin changes several features of your IDE. The changes are only applied in file types supported by Kite (currently Python only). If you’re working in a Python file then you will see the modified user interface. If you’re working in HTML files, for example, you will continue to see the traditional user interface of PyCharm/IntelliJ.

Code completion

The plugin offers Kite’s code completions in the editor. Kite’s completions are inserted at the beginning of the list of completions; completions which were returned by PyCharm/IntelliJ will be listed after Kite’s suggestions. Duplicate items are removed. Kite’s code completion items have a little kite icon in front of it to indicate the source.

Code completion of json.dumps()

If code completion is requested while Kite is not running, PyCharm’s/IntelliJ’s items will be displayed together with a little note below that Kite’s are currently not available.

Documentation for autocompletion items

The quick documentation feature is available for Kite’s code completions. To show it, select an item in the code completion menu and then invoke View -> Quick Documentation. Alternatively you can use the keyboard shortcut which is shown next to the Quick Documentation menu item.

Code completion of json.dumps() with documentation

Limitations

The Kite plugin returns the same completions for basic and smart-type completions.

At this time the autocompletion is available only while you’re editing a file, i.e. at the place you’re typing. If you call the code completion later on at another location without editing the file then Kite does not return the expected completions at all times. We’re working on full support of this feature.

Quick documentation

The quick documentation is enhanced by the plugin in files supported by Kite. Choose View -> Quick Documentation to open the documentation popup. This feature uses the standard key binding of your IDE, in most cases this is Ctrl + Q (or Cmd + J on Mac OS X).

Use the arrow keys or your mouse to scroll in the content. You can close the popup by pressing Esc.

Quick documentation popup

If the quick documentation is requested while Kite is not running then PyCharm’s/IntelliJ’s original documentation popup will be displayed.

Documentation on mouse move

If you enabled the setting Settings -> Editor -> General -> Show quick documentation on mouse move, then the popup will show Kite docs. The Kite plugin uses the configured delay of this setting to show the popup after the mouse was moved. IntelliJ’s original popup will not be shown in supported files.

Popup after mouse move

Limitations

If the mouse over popup is requested while Kite is not running then a balloon notification will be displayed instead. The original quick doc isn’t shown.

Parameter info

The Kite plugin enhances the parameter information of your IDE.

If you place the text cursor into a method call and call View -> Parameter Info in a file supported by Kite then an extended popup will be shown. It uses the standard key binding of your IDE, in most cases this is Ctrl + P (or Cmd + P on Mac OS X).

Param info of json.dumps()

The currently active parameter is highlighted as bold.

Press Tab to highlight the next parameter in the panel. Use Shift + Tab to highlight the previous parameter. If you edit the file or move the text cursor then the currently highlighted parameter will be updated.

The links in the panel are clickable. Click on the links to see the details of the linked element.

If parameter information is requested while Kite is not running then the original parameter information popup will be displayed instead.

Whitelisting

The Kite engine’s features are only available in whitelisted directories. If you edit a file which is not whitelisted then a notification will appear offering to whitelist a directory that contains the file.

To learn more about Whitelisting and privacy check out: http://help.kite.com/article/7-what-files-does-kite-upload-to-their-servers.

Whitelisting message for a file not yet whitelisted

  • Whitelist /: Click this to whitelist the suggested path on your machine. After a short while code completion and the the other Kite features are going to be available.
  • Browse: Use this to specify a custom directory which should be whitelisted instead of the suggested path.
  • Settings: Opens Kite’s permission settings in your browser.
  • Ignore: Kite will no longer prompt you to whitelist this file in your current working session.

To view and edit your whitelisting settings:

  • Click on the Kite icon in the statusbar and then on Settings to open Kite’s settings in your browser. Open the tab Permissions... to edit your whitelisting settings.
  • Visit kite://settings/permissions

Settings

The Kite plugin offers several settings to customize it. The settings are configured for the application, they apply in all your projects.

Open File -> Settings... -> Languages & Frameworks -> Kite to see the configuration options.

Kite plugin settings dialog

Kite allows to set your preferred font sizes for displayed text in the quick documentation panel and the parameter information panel. Because the plugin uses a different rendering engine than the other parts of IntelliJ there might be differences in the size of the rendered text. If no custom font size is configured then Kite applies the font sizes which are used by IntelliJ.

The font settings only apply in file types which are supported by Kite, other file types are not modified in any way.

The font family is not yet configurable. We use suitable values for the different operating systems we support.

  • Quick documentation
    • Custom font size: Set this value to set the font-size of the quick documentation display used by Kite.
  • Parameter Info
    • Custom delay for automatic popup: IntelliJ/PyCharm has a setting to automatically popup the parameter information after a user typed ( or , in a method invocation. The Kite plugin allows you to override the delay of this popup. If the delay is not specified then the value configured in your IDE’s settings will be used instead.
    • Custom font size: This settings allows you to override the font-size of the text displayed in the parameter information panel.
  • Mouse over popup
    • Custom popup delay on mouse move: IntelliJ/PyCharm has a setting to automatically show brief information about an element in your editor if you hover your mouse pointer over it. The setting is not enabled in the default configuration. If you enable it then you’re able to override the delay after which the popup will be displayed. You can click on Configure 'Show quick documentation on mouse move' here to switch to the settings where this configuration option is shown.
    • Custom font size: This font size will be used to render the mouse-over popup which is displayed in file types supported by Kite.

Configuring Keyboard Shortcuts

The Kite plugin enhances PyCharm’s / IntelliJ’s existing features. It inherits the already configured keyboard shortcuts.

The following actions also apply to Kite’s features, which are available in supoprted files:

  • View -> Quick Documentation
  • View -> Parameter Info

Updating a shortcut used by the Kite plugin

FAQ

Is the plugin installed in my IDE?

Please open the settings dialog (File -> Settings...), choose Plugins and check whether there is an item called Kite in the list of installed plugins. Kite in the list of installed plugins

How can I find out whether the Kite plugin is working properly or not?

Please make sure that the plugin is installed (see above). If the plugin is installed please make sure that the Kite engine is running. If the connection between the plugin and the kite engine is working properly then you will see a little blue Kite icon in the status bar.

Kite status bar icon

If the connection is working properly and if no error or warning is shown in the status panel, then please make sure that the file you’re editing is supported by the Kite engine. Only Python files are supported at the moment.

If you use IntelliJ and not PyCharm then Kite can only offer its extended suport for Python if JetBrains’ Python plugin is installed and activated. Please open File -> Settings..., click on Plugin in the list on the left and then search for Python in the list of installed plugins and make sure that it is enabled. If there is no Python plugin in the list then you can install it by clicking on Install JetBrains plugin....

Why does nothing happen when I edit a Python file?

First, make sure that the plugin is working properly (see above). If the plugin is correctly installed then it is possible that the Kite engine is not returning the data you expected for the current file. You can test to make sure that the Kite engine is working by typing import json, you should see Kite completions as you type (they have a little kite icon next to them) and documentation when you select json and click View -> Quick Documentation. If the plugin is not working as you expected then please submit an error report to [email protected].

Owner
Kite
Kite
Python 3 patcher for Sublime Text v4107-4114 Windows x64

sublime-text-4-patcher Python 3 patcher for Sublime Text v4107-4114 Windows x64 Credits for signatures and patching logic goes to https://github.com/l

187 Dec 27, 2022
Multi-user server for Jupyter notebooks

Technical Overview | Installation | Configuration | Docker | Contributing | License | Help and Resources Please note that this repository is participa

JupyterHub 7k Jan 02, 2023
VSCode Development Container Template

VSCode Development Container Template This template enables you to use a full-fledged containerized development environment for your machine learning

Paige Bailey 10 Oct 10, 2022
A GitHub Action hosted Python IDE!

What is this ? This is an IDE running on GitHub Actions which can help in..... Running small snippets. Running codes whenever PC is not available and

Jainam Oswal 21 Nov 09, 2022
Python Indent - Correct python indentation in Visual Studio Code.

Python Indent Correct python indentation in Visual Studio Code. See the extension on the VSCode Marketplace and its source code on GitHub. Please cons

Kevin Rose 57 Dec 15, 2022
notebookJS: seamless JavaScript integration in Python Notebooks

notebookJS enables the execution of custom JavaScript code in Python Notebooks (Jupyter Notebook and Google Colab). This Python library can be useful for implementing and reusing interactive Data Vis

jorgehpo 146 Dec 07, 2022
Run context-aware commands from your source code comments

Run context-aware commands from your source code comments. Codeline allows you to run custom commands directly from source-code comments, combining th

Rory Byrne 32 Nov 09, 2021
Mu - A Simple Python Code Editor

A small, simple editor for beginner Python programmers. Written in Python and Qt5.

Mu 1.2k Jan 03, 2023
A Sublime Text package that allows a user to view all the available core/plugin commands for Sublime Text and Sublime Merge, along with their documentation/source.

CommandsBrowser A Sublime Text package that allows a user to view all the available core/plugin commands for Sublime Text and Sublime Merge, along wit

Sublime Instincts 26 Nov 15, 2022
Wasm powered Jupyter running in the browser 💡

JupyterLite JupyterLite is a JupyterLab distribution that runs entirely in the browser built from the ground-up using JupyterLab components and extens

JupyterLite 3k Jan 04, 2023
Gaphor is a UML and SysML modeling application written in Python.

Gaphor is a UML and SysML modeling application written in Python. It is designed to be easy to use, while still being powerful. Gaphor implements a fully-compliant UML 2 data model, so it is much mor

Gaphor 1.3k Jan 07, 2023
Integrate clang-format with Sublime Text

Sublime Text Clang Format Plugin This is a minimal plugin integrating clang-format with Sublime Text, with emphasis on the word minimal. It is not rea

Jon Palmisciano 1 Dec 17, 2021
Spyder - The Scientific Python Development Environment

Spyder is a powerful scientific environment written in Python, for Python, and designed by and for scientists, engineers and data analysts. It offers a unique combination of the advanced editing, ana

Spyder IDE 7.3k Jan 08, 2023
An amazing simple Python IDE for developers!

PyHub An amazing simple Python IDE for developers! Get ready to compile and run your code in the most simplest and easiest IDE of the ancient world! T

Aniket Bhattacharjee 2 Dec 31, 2022
cottonformation is a Python tool providing best development experience and highest productivity

Welcome to cottonformation Documentation Full Documentatioin Here cottonformation is a Python tool providing best development experience and highest p

Sanhe 6 Jul 08, 2022
Blender add-on for baking your scene to textures

Bake Scene This add-on bakes your scene to textures. This is useful in many situations: Creating trim sheets Creating decals Creating hair cards Creat

5 Sep 20, 2022
A way to integrate Latex, VSCode, and Inkscape in macOS. Adopted the whole workflow from Gilles Castel.

VSCode-LaTeX-Inkscape A way to integrate LaTeX, VSCode, and Inkscape in macOS Abstract I use LaTeX heavily in past two years for both academic work an

Pingbang Hu 62 Dec 14, 2022
A Python code editor that looks like GNU Emacs.

🚧 WARNING 🚧 : Under development... Testing is not recommended! Welcome to Snake Editor! Hi! This is our repository, we are here to present our new p

Marcio Dantas 5 May 20, 2022
💻 Open recent VS Code folders and files using Ulauncher

ulauncher-vscode-recent 💻 Open recent VS Code folders and files using Ulauncher. Quickly open recently-opened VS Code project directories and files.

Mihir Chaturvedi 14 Nov 24, 2022
Joy is a tiny creative coding library in Python.

Joy Joy is a tiny creative coding library in Python. Installation The easiest way to install it is download joy.py and place it in your directory. The

FOSS United Foundation 181 Dec 04, 2022