aboutsummaryrefslogtreecommitdiff
path: root/README.org
diff options
context:
space:
mode:
Diffstat (limited to 'README.org')
-rw-r--r--README.org53
1 files changed, 13 insertions, 40 deletions
diff --git a/README.org b/README.org
index 5d6b3f7..f5447dc 100644
--- a/README.org
+++ b/README.org
@@ -1,9 +1,12 @@
#+title: hcel
-hcel is a fork of [[https://github.com/alexwl/haskell-code-explorer][Haskell Code Explorer]], it works with GHC-9.2.2 with
+hcel is an indexer and a server of Haskell packages. It serves
+indexed packages through JSON API.
+
+It is a fork of [[https://github.com/alexwl/haskell-code-explorer][Haskell Code Explorer]], and works with GHC-9.2.2 with
Cabal-3.6.2.0, and possibly other adjacent versions.
-It also comes with an emacs binding.
+It also has an emacs client.
* Install
@@ -33,7 +36,7 @@ can be removed to save space. To launch the app, run
haskell-code-server -p /path/to/package1 -p /path/to/package2 ...
#+end_src
-and the app will be available at localhost:3000.
+and the server will be available at localhost:3000.
You can also hook up a local hoogle for documentation lookup:
@@ -43,48 +46,18 @@ hoogle server
haskell-code-server -p /path/to/package1 -p /path/to/package2 --use-hoogle-api --hoogle-api https://hoogle.localhost/ --disable-hoogle-api-cert-check
#+end_src
-For the readme of the original version, see README.md.original in the
-project tree, also available at
-https://g.ypei.me/hcel.git/tree/README.md.original.
-
-* Difference from the original version
-
-The indexer of this version looks for all build targets, including
-testsuites and benchmarks, in the .cabal file, therefore you'll need
-to build them all before indexing, otherwise the indexer will complain
-about missing files.
-
* Emacs binding
-You may find an emacs client under the ~lisp~ directory. It covers
- almost all features in the js client, and more:
-
-- Jump to definition (using xref)
-- Find references (based on compilation mode)
-- Search identifiers in a package or globally (based on compilation mode)
-- Highlight the identifier at point
-- Browse packages, modules and identifiers in an outline mode buffer
-- Eldoc integration, showing type and documentation of the identifier
- at point, or the selected expression.
-- Syntax highlight (requires haskell-mode)
-
-To start, start a server, and set the endpoint:
-
-#+begin_src elisp
-(require 'hc)
-(setq hcel-endpoint "localhost:8080")
-#+end_src
+The may find an emacs client called hc.el at
+ <https://g.ypei.me/hc.el.git>.
-Then run command ~hcel~ to browse in a hcel-outline mode buffer, or
-~hcel-package~ to select a package and module in the minibuffer.
+The original haskell-code-explorer has a web client, but this will be
+removed in favour of serving the Emacs client.
* Contact and Copyright
-The original haskell-code-explorer is written by Alexey Kiryushin
-(alexey.a.kiryushin@gmail.com), hosted at [[https://github.com/alexwl/haskell-code-explorer][github]].
-
-This fork is maintained by Yuchen Pei (id@ypei.org).
+hcel is maintained by Yuchen Pei (id@ypei.org).
-The original work is under the [[https://www.gnu.org/licenses/license-list.html#Expat][expat license]], while the changes by
-Yuchen Pei are covered by [[https://www.gnu.org/licenses/agpl-3.0.en.html][GNU AGPLv3+]]. You may find the license text
+The original [[https://github.com/alexwl/haskell-code-explorer][haskell-code-explorer]] is under the [[https://www.gnu.org/licenses/license-list.html#Expat][expat license]], whereas
+the changes are covered by [[https://www.gnu.org/licenses/agpl-3.0.en.html][GNU AGPLv3+]]. You may find the license text
in a file named COPYING.agpl3 in the project tree. As a combination,
this work as a whole is covered by the terms of [[https://www.gnu.org/licenses/agpl-3.0.en.html][GNU AGPLv3+]] ([[https://www.gnu.org/licenses/gpl-faq.html#WhatDoesCompatMean][why?]]).