aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuchen Pei <hi@ypei.me>2022-10-21 17:19:12 +1100
committerYuchen Pei <hi@ypei.me>2022-10-21 17:19:21 +1100
commitec684f8e2843298a43ec719043b5b5c7be2f1e4d (patch)
treed5db9e3ae43dab0cb1770bc2ca16bf4eafc85e32
parentf7e78f46636ef5f07b0bc3b6b95696c61863aa30 (diff)
updating readme with features and todos
-rw-r--r--README.org37
1 files changed, 29 insertions, 8 deletions
diff --git a/README.org b/README.org
index 9044fa2..35e197d 100644
--- a/README.org
+++ b/README.org
@@ -17,14 +17,14 @@ and we want to do something about it. Sometimes, we have multiple
ways to handle the object, and we would like to choose the /handler/
rather than the /object/. For example, say we want to clone the a git
repo <https://git.sr.ht/~bzg/org-mode> at point. In this case, the
-default behaviour might be open the url with eww, but we want to use a
-different handler. An adhoc way would be to implement a command that
-runs a ~git clone~ process to clone the url at point. The problem is
-how to invoke the command? We can do so by invoking it with M-x or
-binding it to a key. Maybe yet another thing we may want to do urls
-is to copy it, or run a command to fetch info and capture it into an
-org entry. It can soon be exhausting to remember these commands, and
-you might forget some useful commands you wrote a year ago!
+default behaviour might be open the url with eww, which is not what we
+want. An adhoc way would be to implement a command that runs a ~git
+clone~ process to clone the url at point. The problem is how to
+invoke the command? We can do so by invoking it with M-x or binding
+it to a key. Maybe yet another thing we may want to do urls is to
+copy it, or run a command to fetch info and capture it into an org
+entry. It can soon be exhausting to remember these commands, and you
+might forget some useful commands you wrote a year ago!
hmm is designed to fix this problem. Depending on the context, hmm
will guess the object, filter commands that handle the object, and
@@ -33,6 +33,14 @@ example, where the point is in at a url to a git repo, you invoke
<C-M-return>, and a list of commands show up for you to choose from.
In a sense it is like "open with".
+Features:
+
+- Handling three kinds of entities: query, file (including directory)
+ and
+- Auto-creation of handlers from xdg mimetype associations
+- Creation of handlers from cross prodcuct of search engines and web
+ browsers.
+
* Install and use
Clone the repo, add the path to load-path, require and update.
@@ -51,6 +59,19 @@ Clone the repo, add the path to load-path, require and update.
This binds <C-M-<return>> to the ~hmm~ command.
+* TODOs
+
+- Include user-defined xdg mimetype associations from
+ ~~/.config/mimeapps.list~ etc.
+- Include an file of example configs, which may require optional deps
+ like magit, osm etc.
+- Have a default handler for each scenario, to save effort in choosing
+ handlers
+- A quick way to set default handler for a scenario
+- Allow user to choose which object type they want to handle
+- Maybe use file-directory-p instead of calling external command to
+ check mime type agains "directory/inode" for directory recognition.
+
* Prior art
- Emacs browse-url.el has some functions and variables like