{"id":22686001,"url":"https://github.com/duckwork/hippie-completing-read","last_synced_at":"2025-04-22T13:22:53.123Z","repository":{"id":85445160,"uuid":"417194814","full_name":"duckwork/hippie-completing-read","owner":"duckwork","description":"hippie-expand, but with completing-read","archived":false,"fork":false,"pushed_at":"2022-07-26T21:41:31.000Z","size":17,"stargazers_count":10,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-13T14:11:50.027Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Emacs Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/duckwork.png","metadata":{"files":{"readme":"README.org","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-14T15:59:27.000Z","updated_at":"2024-01-10T11:31:13.000Z","dependencies_parsed_at":"2023-03-13T05:19:14.660Z","dependency_job_id":null,"html_url":"https://github.com/duckwork/hippie-completing-read","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/duckwork%2Fhippie-completing-read","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/duckwork%2Fhippie-completing-read/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/duckwork%2Fhippie-completing-read/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/duckwork%2Fhippie-completing-read/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/duckwork","download_url":"https://codeload.github.com/duckwork/hippie-completing-read/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250246747,"owners_count":21398919,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-09T22:25:29.379Z","updated_at":"2025-04-22T13:22:53.088Z","avatar_url":"https://github.com/duckwork.png","language":"Emacs Lisp","funding_links":[],"categories":[],"sub_categories":[],"readme":"#+title: Hippie Completing Read\n#+subtitle: toward a unified Emacs completing UI\n\nI use ~completing-read~ in Emacs.  I even use it in lieu of popular completion packages like =company= and such, for ~completion-in-region~.  The one final thorn in my side was using =hippie-expand=, which completes some things better, or at least … /different-er/, than regular ~completion-in-region~ commands.  So I went searching for how to combine both things.\n\nDeep in the back waters of EmacsWiki, I found it: code for an [[https://www.emacswiki.org/emacs/HippieExpand#h5o-11][=ido= interface to =completing-read=]].  It was easy to adapt to ~completing-read~ code, so I did, and here's the package.\n\n* Install\n\nYou should honestly know how to install packages in Emacs, but you can use =straight.el=:\n\n#+begin_src emacs-lisp\n  (straight-use-package\n   '(hippie-completing-read\n     :host nil\n     :repo \"https://codeberg.org/acdw/hippie-completing-read.el\"))\n#+end_src\n\nand you should be good to go.\n\n* Using\n\n=hippie-completing-read= exposes one function, aptly called ~hippie-completing- read~.  I bind it thusly:\n\n#+begin_src emacs-lisp\n  (global-set-key (kbd \"M-/\") #'hippie-completing-read)\n#+end_src\n\n* Customizing\n\nThere are a number of customization options available for =hippie-completing- read=, of which this is a not-definitely up-to-date list.  For the definitive list, see the Easy Customization group for this package.\n\n- ~hippie-completing-read-prompt~ :: The prompt to display with ~hippie-completing-read-expand-with~.  Default: =Hippie:=.\n- ~hippie-completing-read-function~ :: Function to use to display and select from ~hippie-expand~ selections.  Should be compatible with ~completing-read~.  Default: ~completing-read~.\n- ~hippie-completing-read-function-parameters~ :: Further parameters to pass to ~hippie-completing-read-function~. By default, add ~he-search-string~ (the thing we're completing) as initial input.  This variable is risky, since its values are evaluated when passed to ~hippie-completing-read~.\n- ~hippie-completing-read-threshold~ :: Number of expansion candidates needed before using ~completing-read~.  The more traditional \"cycling\" behavior for hippie-complete will be used so long as there are not more completion candidates than in this number.\n\n* Contributing\n\nIDK, open an issue, or whatever.\n\n* License\n\nCopyright (C) 2021--2022 Case Duckworth \u003cacdw@acdw.net\u003e\n\nUsage of the works is permitted provided that this instrument is retained with the works, so that any entity that uses the works is notified of this instrument.\n\nDISCLAIMER: THE WORKS ARE WITHOUT WARRANTY.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fduckwork%2Fhippie-completing-read","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fduckwork%2Fhippie-completing-read","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fduckwork%2Fhippie-completing-read/lists"}