aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristophe Grand <christophe@cgrand.net>2009-02-23 08:40:57 +0000
committerChristophe Grand <christophe@cgrand.net>2009-02-23 08:40:57 +0000
commit631d0c88047bf4f035abb69fe00a493189ec6459 (patch)
tree5bb684059db8c6cc51883e29897ed1598ce6af65
parentbcad3f1b0e33251f71c40dcc2c159fe9b2b221db (diff)
Added "feeling lucky" web search when no local or remote javadoc found. Thanks to digash on IRC.
-rw-r--r--[-rwxr-xr-x]src/clojure/contrib/javadoc.clj13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/clojure/contrib/javadoc.clj b/src/clojure/contrib/javadoc.clj
index 31575cb2..78b566f4 100755..100644
--- a/src/clojure/contrib/javadoc.clj
+++ b/src/clojure/contrib/javadoc.clj
@@ -16,6 +16,9 @@
(:use clojure.contrib.javadoc.browse)
(:import (java.io File)))
+(def *feeling-lucky-url* "http://www.google.com/search?btnI=I%27m%20Feeling%20Lucky&q=allinurl:")
+(def *feeling-lucky* true)
+
(def
#^{:doc "Ref to a list of local paths for Javadoc-generated HTML
files."}
@@ -65,10 +68,12 @@
@*local-javadocs*)))]
(-> file .toURI str)
;; If no local file, try remote URLs:
- (some (fn [[prefix url]]
- (when (.startsWith classname prefix)
- (str url url-path ".html")))
- @*remote-javadocs*))))
+ (or (some (fn [[prefix url]]
+ (when (.startsWith classname prefix)
+ (str url url-path ".html")))
+ @*remote-javadocs*)
+ ;; if *feeling-lucky* try a web search
+ (when *feeling-lucky* (str *feeling-lucky-url* url-path ".html"))))))
(defn javadoc
"Opens a browser window displaying the javadoc for the argument.