Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

An Atom package for Elixir

License

NotificationsYou must be signed in to change notification settings

msaraiva/atom-elixir

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Autocomplete, Go/Jump to Definition, Documentation and more.

Dependencies

Install

apm install atom-elixir

Features

  • Autocomplete(Screenshots)
    • Lists modules, functions, variables, function params and module attributes available in the current scope.
    • Lists callbacks defined in behaviours (works also when @behaviour is injected byuse directives)
    • Lists the accepted "returns" specs when inside a callback implementation
    • Indicates the type of the module (Module, Struct, Protocol, Implementation or Exception)
    • Shows documentation summary for each module or function
    • Shows function and callback specs
    • Works with aliased and imported modules
    • Indicates where the function was originally defined (for aliased, imported modules or callbacks)
    • Smart snippets for functions: After|>, doesn't write first parameter. After&, writes&function/arity
  • Go to definition
    • Jump to the definition of the module or function under the cursor
    • Erlang modules and functions also supported
    • Return from definition (to previous files/positions)
    • Works with aliased and imported modules
  • Documentation View(Screenshots)
    • Shows documentation of the module or function under the cursor
    • Also shows specs, types and callbacks (when available)
    • Works with aliased and imported modules
  • Quoted Code view(Screenshots)
    • Convert selected text into its quoted form
    • Live pattern matching against quoted code
  • Expand Macro view(Screenshots)
    • Expands the selected macro. Shows expanded code using Expand Once, Expand and Expand All.
  • All features depending on aliases and imports are already supporting the new v1.2 notation.

IMPORTANT: Most of the features only work properly if you have the related.beam files in the project's_build folder. So please, before opening an issue, make sure you can successfully compile your project in the environment you're trying to use it ("dev" and/or "test"). You can also hitALT+CMD+i to open the Atom's console (ALT+CTRL+i on windows/linux) in order to see the server's output. When successfully started, atom-elixir prints:

[atom-elixir] Initializing ElixirSense server for environment "dev" (Elixir version 1.4.0)[atom-elixir] Working directory is "/Users/your_name/workspace/your_project/"

All error messages from the server should also be displayed in the console. Please send those messages when reporting an issue.

Shortcuts

  • Autocomplete:ctrl + space
  • Go To Definition:alt + down oralt + click
  • Return from Definition:alt + up
  • Go To Documentation:F2
  • Open Quoted Code View + quote selected text:ctrl + shift + t
  • Open Expand Code View + expand selected text:ctrl + shift + x

Notice: The keymaps were defined for my own OS X environment. If you're using Linux, Windows or even another OS X environment and the current key mapping conflicts with other commands, feel free to open an issue and report it.

Screenshots

Autocomplete

  • Listing variables, module attributes, functions and macros available in the current scope
  • Showing specs and documentation summary
  • Showing where each function was originally defined

image

  • Listing callbacks defined in used behaviours

image

  • Listing accepted "returns" when inside a callback implementation

image

Documentation

  • Showing documentation of the module/function under the cursor

image

  • Showing documentation of the module under the cursor (callbacks)

image

Expand Macro View

  • Expanding selected macro call

image

Quoted Code View

  • Quoted form of the selected code
  • Live pattern matching against quoted code

image

Credits

  • The Elixir Server is an extended version ofalchemist-server by Samuel Tonini. Pay attention that the current API is no longer compatible with the original one.
  • The Expand View was inspired by themex tool by Luc Fueston. There's also a very nice post where he describes the whole process ofBuilding A Macro-Expansion Helper for IEx.

[8]ページ先頭

©2009-2025 Movatter.jp