Skip to content

Dash-joe-novell #7

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 112 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
112 commits
Select commit Hold shift + click to select a range
bb5ce5d
use file extension as keyword
gdelmas Nov 13, 2013
89121e9
configurable dash keywords for file types and file extensions
gdelmas Nov 13, 2013
4d4b802
changed name, version and plugin description
gdelmas Nov 13, 2013
77290ab
updated readme
gdelmas Nov 13, 2013
70a23e3
Update README.txt
Kapeli Nov 18, 2013
651a494
Merge pull request #3 from Kapeli/master
gdelmas Nov 18, 2013
fb69ce3
changed dash download url in plugin description
gdelmas Nov 18, 2013
befe780
added ruby syntax support
gdelmas Nov 24, 2013
e84c00b
fixed issue with lookup on empty files and on file end
gdelmas Nov 24, 2013
387d276
Merge branch 'master' of https://github.com/gdelmas/AppCodeDashSearch
gdelmas Nov 24, 2013
2d91148
Update README.txt
gdelmas Nov 24, 2013
7af235e
Update README.txt
gdelmas Nov 24, 2013
1e74c6b
Update and rename README.txt to README.md
gdelmas Nov 25, 2013
411444b
Better defaults for Android Studio.
agatti Nov 26, 2013
c122c6d
Fix Java keywords
Kapeli Nov 29, 2013
ecae704
Merge pull request #7 from Kapeli/master
gdelmas Nov 29, 2013
4fb2551
Merge https://github.com/gdelmas/IntelliJDashPlugin
agatti Dec 1, 2013
42961cb
Avoid potential NPE in isIdentifierPart.
agatti Dec 2, 2013
001c396
Merge pull request #4 from agatti/master
gdelmas Dec 9, 2013
4ad2e49
fix conflicts from #4
gdelmas Dec 9, 2013
3f1013f
Merge branch 'filetype-fixes' of https://github.com/agatti/IntelliJDa…
gdelmas Dec 9, 2013
019844e
fixing fileType issue
gdelmas Dec 9, 2013
785ca6c
updated plugin description
gdelmas Dec 15, 2013
579ff39
updated readme to address issue #13
gdelmas Jan 29, 2014
2260f5e
context sensitive search
gdelmas Apr 5, 2014
4b76fef
added beta notes to readme
gdelmas Apr 5, 2014
aecf235
better language context list debug output
gdelmas Apr 23, 2014
5b89d63
context to keyword mapping for all intellij idea ide's
gdelmas Apr 23, 2014
a62fb77
human readable status message for potential troubleshooting
gdelmas Apr 23, 2014
d2bf8a0
Merge branch 'master' of https://github.com/gdelmas/AppCodeDashSearch
gdelmas Apr 23, 2014
e8685f9
updated version and description
gdelmas Apr 23, 2014
1b6e7ba
added missing ruby mapping
gdelmas Apr 24, 2014
abb45cf
changed version number and release notes
gdelmas Apr 24, 2014
91e2cf1
changed version number and release notes
gdelmas Apr 24, 2014
e9d8620
Merge branch 'master' of https://github.com/gdelmas/AppCodeDashSearch
gdelmas Apr 24, 2014
3d1223c
avoid potential NPE
gdelmas May 1, 2014
d594c10
fixed string comparisons & var initializations
gdelmas May 6, 2014
119b0e8
updated .gitignore
gdelmas May 6, 2014
3ddfa3b
changed required idea version
gdelmas May 11, 2014
595cda4
Update README.md
Kapeli May 11, 2014
701615d
Merge pull request #20 from Kapeli/master
gdelmas May 11, 2014
a925e10
fixed AppCode 1.x url in readme
gdelmas May 11, 2014
d6b8fb1
Dash 2.1 keywords
May 16, 2014
70d556c
Merge pull request #21 from Kapeli/master
gdelmas May 16, 2014
637eade
updated project iml
gdelmas May 16, 2014
97d9de2
updated language list & added more languages context support
gdelmas May 17, 2014
db66a08
added angularjs to keywords
gdelmas May 17, 2014
0f80be6
Better integration for Android projects.
agatti May 1, 2014
8ff1dd9
New SDK detection logic in place.
agatti May 1, 2014
0c203fc
sdk context detection
gdelmas Jun 2, 2014
d7c581b
fix exclude sdk logic
gdelmas Jun 4, 2014
afd9292
updated version number
gdelmas Jun 4, 2014
4e56985
update readme
gdelmas Jun 6, 2014
4143719
fixed typo
gdelmas Jun 29, 2014
76da67e
added injected language detection
gdelmas Jun 29, 2014
53d95f0
cleaned up imports
gdelmas Jun 29, 2014
6f5d310
generic sql will get mapped to docset specified through "SQL Dialects…
gdelmas Jun 29, 2014
3338264
updated description
gdelmas Jun 29, 2014
00a643d
refactored keyword lookup
gdelmas Jun 29, 2014
d6a37b9
java sdk version detection
gdelmas Jun 29, 2014
75e63dd
python sdk version detection
gdelmas Jun 29, 2014
f7b8fec
changed plugin version & changenotes
gdelmas Jun 30, 2014
54cffde
3.1 release
gdelmas Jul 1, 2014
b147941
fix #26
gdelmas Jul 26, 2014
06bfdde
cross platform support
gdelmas Jul 26, 2014
062c3d1
fixed search term when no language was detected
gdelmas Jul 30, 2014
0c067f2
Zeal support added
Oct 5, 2014
c99f88e
os dependent menu name
gdelmas Nov 12, 2014
300bda2
added icons
gdelmas Dec 3, 2014
0dcbfc5
Merge remote-tracking branch 'alexschneider/zeal_support' into zeal-s…
gdelmas Dec 3, 2014
c28f5bc
finalized zeal support
gdelmas Dec 3, 2014
f7e2042
updated version & readme
gdelmas Dec 4, 2014
963e433
fixed keywords not working with dash-plugin scheme
gdelmas Dec 30, 2014
50f4312
updated version
gdelmas Dec 30, 2014
3da11ac
actionscript support
gdelmas Feb 14, 2015
4074d62
updated version
gdelmas Feb 14, 2015
ed1d61a
adds the Clojure-docset for searches from within Cursive-projects
clojj Mar 4, 2015
a7dc4e4
Merge pull request #38 from clojj/master
gdelmas Apr 12, 2015
a9037d3
invoke Dash.app without resigning focus
gdelmas Apr 12, 2015
b8faf0d
updated version
gdelmas Apr 12, 2015
549f08f
dockerfile mapping
gdelmas Jan 20, 2016
2e2ae43
updated version
gdelmas Jan 20, 2016
36f3288
mappings for shell commands in dockerfile
gdelmas Jan 20, 2016
df176d8
Use dash uri for zeal
symptog Oct 14, 2016
72064db
resolving the problem in issue #57
iamsoorena Dec 15, 2016
a6b7687
Update KeywordLookup.java
iamsoorena Dec 16, 2016
8750b9a
Merge pull request #58 from iamsoorena/patch-1
gdelmas Dec 16, 2016
402f2c8
Update README.md
gdelmas Apr 28, 2017
b382169
added matplotlib python keyword
gdelmas Sep 18, 2017
4b8ce61
removed flattr links
gdelmas Nov 1, 2017
8d1570a
go mapping for GoLand
gdelmas Dec 14, 2017
bede2f1
Merge pull request #55 from symptog/master
gdelmas Dec 14, 2017
6280e6f
added license
gdelmas Dec 14, 2017
002e588
project settings
gdelmas Dec 14, 2017
f00043e
elixir mapping
gdelmas Dec 14, 2017
d9e7063
erlang mapping
gdelmas Dec 14, 2017
a3d1907
simplified menu command presentation on win & linux
gdelmas Dec 14, 2017
cd46ca0
updated version
gdelmas Dec 14, 2017
21fe246
updated readme
gdelmas Dec 14, 2017
4505bf9
simplified String.join with Java 8
gdelmas Dec 15, 2017
dc19a2e
simplified launcher classes
gdelmas Dec 15, 2017
85aeb16
refactored main Action
gdelmas Dec 16, 2017
43607b8
added search without filtering
gdelmas Dec 16, 2017
6f4c5e8
java 9 sdk detection & mapping
gdelmas Dec 16, 2017
f9109e6
updated info text for „Search all“ feature
gdelmas Dec 16, 2017
43824be
updated version
gdelmas Dec 16, 2017
85f1eb9
status message for „search all“
gdelmas Dec 16, 2017
cc74ad0
updated license
gdelmas Jan 16, 2018
6f5619d
Readme: Zeal/Windows troubleshooting entry
gdelmas Jan 20, 2018
954a1d9
Add correct angular keyword for Zeal
jafa7250 Jun 25, 2018
d3b10aa
Merge pull request #74 from jafa7250/master
gdelmas Jun 26, 2018
6161e06
added dartdocs mapping
gdelmas Feb 28, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 73 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,73 @@
.DS_Store
# Created by http://www.gitignore.io

### OSX ###
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon


# Thumbnails
._*

# Files that might appear on external disk
.Spotlight-V100
.Trashes

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk


### Xcode ###
build/
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata
*.xccheckout
*.moved-aside
DerivedData
*.xcuserstate


### AppCode ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm

## Directory-based project format
.idea/
# if you remove the above rule, at least ignore user-specific stuff:
# .idea/workspace.xml
# .idea/tasks.xml
# and these sensitive or high-churn files:
# .idea/dataSources.ids
# .idea/dataSources.xml
# .idea/sqlDataSources.xml
# .idea/dynamic.xml

## File-based project format
*.ipr
*.iws
*.iml

## Additional for IntelliJ
out/

# generated by mpeltonen/sbt-idea plugin
.idea_modules/

# generated by JIRA plugin
atlassian-ide-plugin.xml

# generated by Crashlytics plugin (for Android Studio and Intellij)
com_crashlytics_export_strings.xml
7 changes: 4 additions & 3 deletions Dash.iml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,10 @@
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/resources" type="java-resource" />
</content>
<orderEntry type="jdk" jdkName="IDEA IC-122.SNAPSHOT" jdkType="IDEA JDK" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" exported="" scope="PROVIDED" name="sql" level="project" />
</component>
</module>

</module>
9 changes: 9 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
MIT License

Copyright (c) 2013-2018 Gerard Delmàs and contributors

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
87 changes: 75 additions & 12 deletions META-INF/plugin.xml
Original file line number Diff line number Diff line change
@@ -1,25 +1,84 @@
<idea-plugin version="2">
<id>com.paperetto.dash</id>
<name>Dash Launcher</name>
<version>1.0</version>
<vendor email="[email protected]" url="http://www.linkedin.com/in/combinatorial">David Brittain</vendor>
<name>Dash</name>
<version>3.3</version>
<vendor url="https://github.com/gdelmas/IntelliJDashPlugin">Gerard Delmàs</vendor>

<description><![CDATA[
Launches Dash with the word under the caret or the selected text<br>
Dash is a Mac OSX utility that can be obtained from the <a href="http://itunes.apple.com/us/app/dash/id458034879?ls=1&mt=12">Apple Store</a>
]]></description>
<p>A smart and simple plugin that provides keyboard shortcut access for Dash, Velocity or Zeal in IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, DataGrip, CLion, GoLand and Android Studio.</p>

<p><h2><b>Usage</b></h2></p>
<p>The default <b>shortcut</b> assigned to smart-search is <b>Cmd-Shift-D</b> (Mac OS X) or <b>Ctrl-Shift-D</b> (Windows, Linux).</p>
<p>A <b>menubar command</b> named either "<b>Smart-Search Documentation</b>" can be found in the "Tools" menu.</p>
<p>The plugin either searches for the statement at caret position or the current selection. It will identify the programming language in use and request filtered results accordingly. A non filtered search over all documentation entries can be invoked by adding the <b>Alt</b> modifier key to the shortcut. "<b>Search all Documentation</b>" is also available in the tools menu.

<p><h2><b>Configuration</b></h2></p>
<h3><b>Shortcut</b></h3>
<p>You can change the shortcut at Preferences -&gt; Keymap -&gt; Plug-ins -&gt; Dash.</p>
<h3><b>Toolbar Icon</b></h3>
<p>You can add a button to the toolbar. Right-click the menubar -&gt; Customize […]. You will find the button under "Plug-ins -&gt; Dash".</p>

<p><h2><b>Supported API Documentation Browsers</b></h2></p>
<h3><b>Kapeli Dash (Mac OS X)</b></h3>
<p>Dash is an API Documentation Browser and Code Snippet Manager. Dash stores snippets of code and instantly searches offline documentation sets for 150+ APIs (for a full list, see below). You can even generate your own docsets or request docsets to be included. <a href="http://kapeli.com/dash">http://kapeli.com/dash</a></p>
<h3><b>Velocity (Windows)</b></h3>
<p>Velocity gives your Windows desktop offline access to over 150 API documentation sets (provided by Dash for OS X). <a href="https://velocity.silverlakesoftware.com">https://velocity.silverlakesoftware.com</a></p>
<h3><b>Zeal (Linux &amp; Windows)</b></h3>
<p>Zeal is a simple offline API documentation browser inspired by Dash (OS X app). <a href="http://zealdocs.org">http://zealdocs.org</a></p>
]]></description>

<change-notes><![CDATA[
Initial release<br>
]]>
<pre>
3.3
- Added non-smart "Search all Documentation" option
- Java 9 SDK detection
3.2.5
- Fixed Zeal Support
- Go, Elixir & Erlang support
3.2.4
- Dockerfile support
3.2.3
- Dash 2.3 Remote redirection support
- Clojure support
3.2.2 ActionScript support
3.2.1 Fixed an issue where
context filters would not work
3.2
- Toolbar icon support
- Velocity support on Windows
- Zeal support on Linux
3.1
- language detection support in strings
- project settings sql dialect will be used
to filter search results
- android project support
- java search results according to projects
sdk version
- python search results according to
projects sdk version
- added language support for: Bash, Go,
Haskell, Lua, Markdown, Scala, TypoScript
- extended language support for: angularjs,
momen, require, awsjs, jasmine, sinon,
tornado, sqlalchemy, numpy, scipy, salt,
polymerdart, angulardart
- performance and stability improvements
3.0.1 Fixed missing Ruby context recognition
3.0 Added Context aware search
2.2 Compatibility and stability fixes
2.1 Added Ruby syntax support, stability fixes
2.0 Added Dash docset keyword support
</pre>
]]>
</change-notes>

<!-- please see http://confluence.jetbrains.net/display/IDEADEV/Build+Number+Ranges for description -->
<idea-version since-build="107.105"/>
<idea-version since-build="123.72"/>

<!-- please see http://confluence.jetbrains.net/display/IDEADEV/Plugin+Compatibility+with+IntelliJ+Platform+Products
on how to target different products -->
<depends>com.intellij.modules.lang</depends>
<depends optional="true">com.intellij.sql</depends>

<application-components>
<!-- Add your application components here -->
Expand All @@ -31,14 +90,18 @@

<actions>
<!-- Add your actions here -->
<action id="DashLauncherAction" class="com.paperetto.dash.DashLauncherAction" text="Search in Dash"
description="Searches word under caret in Google">
<action id="SmartSearchAction" class="de.dreamlab.dash.SmartSearchAction" text="Smart-Search Documentation" description="Searches word under caret or selection in documentation filtered by currently used language">
<add-to-group group-id="ToolsMenu" anchor="last"/>
<keyboard-shortcut keymap="$default" first-keystroke="ctrl shift D"/>
</action>

<action id="SearchAction" class="de.dreamlab.dash.SearchAction" text="Search all Documentation" description="Searches word under caret or selection in documentation">
<add-to-group group-id="ToolsMenu" anchor="last"/>
<keyboard-shortcut keymap="$default" first-keystroke="ctrl alt shift D"/>
</action>
</actions>

<extensions defaultExtensionNs="com.intellij">
<!-- Add your extensions here -->
</extensions>
</idea-plugin>
</idea-plugin>
44 changes: 44 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
A smart and simple plugin that provides keyboard shortcut access for Dash, Velocity or Zeal in IntelliJ IDEA, RubyMine, WebStorm, PhpStorm, PyCharm, DataGrip, CLion, GoLand and Android Studio.

## Installation
To install the plugin in your IDE go to **Preferences -> Plugins -> Browse repositories** and **search for "Dash"**.

## Usage
The default **shortcut** assigned to smart-search is **Cmd-Shift-D** (Mac OS X) or **Ctrl-Shift-D** (Windows, Linux).


A **menubar command** named "**Smart-Search Documentation**" can be found in the "Tools" menu.


The plugin either searches for the statement at caret position or the current selection. It will identify the programming language in use and request filtered results accordingly. A non filtered search over all documentation entries can be invoked by adding the **Alt** modifier key to the shortcut. "**Search all Documentation**" is also available in the tools menu.

## Configuration
### Shortcut
You can change the shortcut at Preferences -> Keymap -> Plug-ins -> Dash.

### Toolbar Icon
You can add a button to the toolbar. Right-click the menubar -> Customize […]. You will find the button under "Plug-ins -> Dash".

## Supported API Documentation Browsers
### Kapeli Dash (Mac OS X)
Dash is an API Documentation Browser and Code Snippet Manager. Dash stores snippets of code and instantly searches offline documentation sets for 150+ APIs (for a full list, see below). You can even generate your own docsets or request docsets to be included.
[http://kapeli.com/dash](http://kapeli.com/dash)

### Velocity (Windows)
Velocity gives your Windows desktop offline access to over 150 API documentation sets (provided by Dash for OS X).
[https://velocity.silverlakesoftware.com](https://velocity.silverlakesoftware.com)

### Zeal (Linux & Windows)
Zeal is a simple offline API documentation browser inspired by Dash (OS X app).
[http://zealdocs.org](http://zealdocs.org)


## Troubleshooting
###### On Windows, when using Zeal the IDE shows `Failed to open dash-plugin://...` in the Event Log
It looks like the URL handler has not been registered for Zeal. Please run `zeal.exe --register`.

###### The plugin does not work on old IDEs
Older IDE versions like **AppCode 1.x** are not supported anymore. Please manually install version 2.2 of the plugin: https://github.com/gdelmas/IntelliJDashPlugin/releases/tag/2.2

###### In rare conditions the installation from the repositories does not work
It looks like there is an IntelliJ/Java bug with OS X Mavericks which prevents to install plugins from the repositories. Please install the plugin manually from [here](https://github.com/gdelmas/IntelliJDashPlugin/releases). For additional information check [issue #13](https://github.com/gdelmas/IntelliJDashPlugin/issues/13).
13 changes: 0 additions & 13 deletions README.txt

This file was deleted.

Binary file added resources/dash.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added resources/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
98 changes: 0 additions & 98 deletions src/com/paperetto/dash/DashLauncherAction.java

This file was deleted.

Loading