{"id":13861859,"url":"https://github.com/xuchunyang/eshell-z","last_synced_at":"2026-02-18T15:01:49.323Z","repository":{"id":35308243,"uuid":"39569615","full_name":"xuchunyang/eshell-z","owner":"xuchunyang","description":"cd to frequent directory in eshell, Emacs port of https://github.com/rupa/z","archived":false,"fork":false,"pushed_at":"2019-11-16T03:40:54.000Z","size":54,"stargazers_count":44,"open_issues_count":1,"forks_count":5,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-01-30T06:43:13.961Z","etag":null,"topics":["emacs-lisp","eshell"],"latest_commit_sha":null,"homepage":"","language":"Emacs Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xuchunyang.png","metadata":{"files":{"readme":"README.org","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-07-23T13:41:44.000Z","updated_at":"2024-07-27T21:03:22.000Z","dependencies_parsed_at":"2022-09-17T21:03:06.005Z","dependency_job_id":null,"html_url":"https://github.com/xuchunyang/eshell-z","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xuchunyang%2Feshell-z","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xuchunyang%2Feshell-z/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xuchunyang%2Feshell-z/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xuchunyang%2Feshell-z/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xuchunyang","download_url":"https://codeload.github.com/xuchunyang/eshell-z/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245416422,"owners_count":20611725,"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":["emacs-lisp","eshell"],"created_at":"2024-08-05T06:01:31.745Z","updated_at":"2025-10-11T21:36:49.670Z","avatar_url":"https://github.com/xuchunyang.png","language":"Emacs Lisp","funding_links":[],"categories":["Emacs Lisp"],"sub_categories":[],"readme":"* =eshell-z= [[https://travis-ci.org/xuchunyang/eshell-z][https://travis-ci.org/xuchunyang/eshell-z.svg?branch=master]] [[https://melpa.org/#/eshell-z][https://melpa.org/packages/eshell-z-badge.svg]] [[https://stable.melpa.org/#/eshell-z][https://stable.melpa.org/packages/eshell-z-badge.svg]]\n** Introduction\nThe =eshell-z= package is an Emacs port of [[https://github.com/rupa/z][z]].\nIt keeps track of where you’ve been and how many commands you invoke there,\nand provides a convenient way to jump to the directories you actually\nuse. =eshell-z= and =z= can work together by sharing the same data file.\n\n** Table of Contents                                                    :TOC@4:\n - [[#eshell-z][=eshell-z=]]\n     - [[#introduction][Introduction]]\n     - [[#install][Install]]\n         - [[#melpa][MELPA]]\n         - [[#manually][Manually]]\n     - [[#setup][Setup]]\n     - [[#usage][Usage]]\n     - [[#notations][Notations]]\n         - [[#aging][Aging]]\n         - [[#frecency][Frecency]]\n         - [[#common][Common]]\n     - [[#tab-completion][Tab Completion]]\n     - [[#see-also][See also]]\n\n** Install\n*** MELPA\nAfter setting up [[http://melpa.org][MELPA]] as a repository, use =M-x package-install eshell-z= or\nyour preferred method.\n\n*** Manually\nAdd eshell-z to your =load-path=. Something like\n\n#+BEGIN_SRC emacs-lisp\n(add-to-list 'load-path \"path/to/eshell-z\")\n#+END_SRC\n\n** Setup\nTo use this package, add following code to your init.el or .emacs\n#+BEGIN_SRC emacs-lisp\n(add-hook 'eshell-mode-hook\n          (defun my-eshell-mode-hook ()\n            (require 'eshell-z)))\n#+END_SRC\n\n** Usage\n#+BEGIN_SRC\n~ $ z -h\nusage: z [-chlrtx] [regex1 regex2 ... regexn]\n\n    -c, --current        estrict matches to subdirectories of the current directory\n    -h, --help           show a brief help message\n    -l, --list           list only\n    -r, --rank           match by rank only\n    -t, --time           match by recent access only\n    -x, --delete         remove the current directory from the datafile\n\nexamples:\n\n    z foo         cd to most frecent dir matching foo\n    z foo bar     cd to most frecent dir matching foo, then bar\n    z -r foo      cd to highest ranked dir matching foo\n    z -t foo      cd to most recently accessed dir matching foo\n    z -l foo      list all dirs matching foo (by frecency)\n#+END_SRC\n\n** Notations\n\n*NOTICE* _This section is copied from the manpage of [[https://github.com/rupa/z][z]]._\n\n*** Aging\nThe rank of directories maintained by z undergoes aging based on a simple\nformula. The rank of each entry is incremented every time it is accessed.  When\nthe sum of ranks is over 9000, all ranks are multiplied by 0.99. Entries with a\nrank lower than 1 are forgotten.\n\n*** Frecency\nFrecency is a portmanteau of 'recent' and 'frequency'. It is a weighted rank\nthat depends on how often and how recently something occurred. As far as I know,\nMozilla came up with the term.\n\nTo z, a directory that has low ranking but has been accessed recently will\nquickly  have  higher rank than a directory accessed frequently a long time\nago.\n\nFrecency is determined at runtime.\n\n*** Common\nWhen multiple directories match all queries, and they all have a common prefix,\nz will cd to the shortest matching directory, without regard to priority.  This\nhas been in effect, if  undocumented, for quite some time, but should probably\nbe configurable or reconsidered.\n\n** Tab Completion\nz supports basic tab completion, press TAB to complete on options and\ndirectories. This is implemented with =pcomplete=.\n\n** See also\n- [[https://github.com/rupa/z][rupa/z]]\n- [[https://github.com/wting/autojump][wting/autojump]] and [[https://github.com/coldnew/eshell-autojump][coldnew/eshell-autojump]]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxuchunyang%2Feshell-z","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxuchunyang%2Feshell-z","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxuchunyang%2Feshell-z/lists"}