{"id":13394689,"url":"https://github.com/technomancy/emacs-starter-kit","last_synced_at":"2025-03-13T20:31:39.078Z","repository":{"id":454234,"uuid":"77734","full_name":"technomancy/emacs-starter-kit","owner":"technomancy","description":"[ARCHIVED] this is ancient history","archived":true,"fork":false,"pushed_at":"2018-05-28T13:16:17.000Z","size":4333,"stargazers_count":2866,"open_issues_count":23,"forks_count":887,"subscribers_count":101,"default_branch":"v3","last_synced_at":"2024-07-31T17:22:49.220Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/technomancy.png","metadata":{"files":{"readme":"README.markdown","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}},"created_at":"2008-11-18T17:30:17.000Z","updated_at":"2024-07-31T17:22:49.221Z","dependencies_parsed_at":"2022-07-16T23:46:08.515Z","dependency_job_id":null,"html_url":"https://github.com/technomancy/emacs-starter-kit","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technomancy%2Femacs-starter-kit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technomancy%2Femacs-starter-kit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technomancy%2Femacs-starter-kit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technomancy%2Femacs-starter-kit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/technomancy","download_url":"https://codeload.github.com/technomancy/emacs-starter-kit/tar.gz/refs/heads/v3","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243478176,"owners_count":20297209,"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-07-30T17:01:28.267Z","updated_at":"2025-03-13T20:31:38.703Z","avatar_url":"https://github.com/technomancy.png","language":null,"funding_links":[],"categories":["Others"],"sub_categories":[],"readme":"# Emacs Starter Kit\n\nVersion 3 of the Emacs Starter Kit is implemented as a prose guide to\nvarious packages and settings which can greatly improve the Emacs\nexperience.\n\n## History\n\nOlder versions of the Starter Kit attempted to be one-size-fits-all\ncodebase intended to be dropped into your `~/.emacs.d` directory\nwholesale. While this proved very popular, taking a big bundle of\nunrelated functionality leads to simply adopting things without\ndeveloping any real understanding. When something goes wrong or even\njust behaves differently from what you'd like, you don't know where to\nlook to fix it.\n\nI've since come to realize users are better suited by small, focused\npackages which provide specific pieces of new functionality. So rather\nthan putting up a big pile of code, the Starter Kit has shifted to\nbecome merely a guide. As an Emacs user, you're going to have to get\ncomfortable seeking out new pieces of elisp, bringing them in,\nconfiguring them, and eventually writing your own. The Starter Kit can\nhelp this process by giving hints as to where to start and what to\nlook for, but constructing a solid configuration is ultimately a\npersonal journey for which you must take the first steps.\n\n## Getting Started\n\nI strongly recommend keeping your dotfiles under version control and\ninstalling Emacs packages inside it using [git subtree](https://blogs.atlassian.com/2013/05/alternatives-to-git-submodule-git-subtree/).\n\nThis avoids many [common](https://glyph.twistedmatrix.com/2015/11/editor-malware.html)\n[problems](https://github.com/melpa/melpa/issues/2342) with\n`package.el`, and it allows you to seamlessly roll back upgrades which\nintroduce breaking changes as well as guaranteeing that all machines you\nwork on share the same versions.\n\n```lisp\n(defun pnh-reinit-libs ()\n  (interactive)\n  (let ((generated-autoload-file (concat user-emacs-directory \"my-autoload.el\")))\n    (dolist (d (directory-files (concat user-emacs-directory \"lib\") t \"^[^\\.]\"))\n      (dolist (f (directory-files d t \"\\\\.el$\"))\n        (byte-compile-file f))\n      (update-directory-autoloads d))))\n\n(dolist (l (directory-files (concat user-emacs-directory \"lib\") nil \"^[^\\.]\"))\n  (add-to-list 'load-path (concat user-emacs-directory \"lib/\" l))\n  (autoload (intern l) (concat l \".el\")))\n\n(when (not (file-exists-p (concat user-emacs-directory \"my-autoload.el\")))\n  (pnh-reinit-libs))\n\n(load (concat user-emacs-directory \"my-autoload.el\"))\n```\n\n### If you liked ... you might also like\n\nThese are all libraries that focus on doing one thing and do it consistently well.\n\n* [better-defaults](https://github.com/technomancy/better-defaults) fix bad built-in behavior.\n* [magit](https://magit.vc) use git without being driven insane.\n* [smex](https://github.com/nonsequitur/smex) for getting ido-style feedback in M-x.\n* [ido-ubiquitous](https://github.com/DarwinAwardWinner/ido-ubiquitous) for geting ido goodness everywhere else.\n* [paredit](http://www.emacswiki.org/emacs/ParEdit) keeps parentheses under control.\n* [idle-highlight-mode](https://github.com/nonsequitur/idle-highlight-mode) for seeing everywhere else an identifier is used at a glance.\n* [find-file-in-project](https://github.com/technomancy/find-file-in-project) quick project-scoped navigation\n* [scpaste](http://p.hagelb.org) the pastebin of champions.\n* [elisp-slime-nav](https://github.com/purcell/elisp-slime-nav) nicer navigation for emacs lisp code.\n* [exwm](https://github.com/ch11ng/exwm) a tiling window manager for X.\n\n## Copyright\n\nCopyright © 2008-2017 Phil Hagelberg and contributors\n\nFiles are licensed under the same license as Emacs unless otherwise\nspecified. See the file COPYING for details.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechnomancy%2Femacs-starter-kit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftechnomancy%2Femacs-starter-kit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechnomancy%2Femacs-starter-kit/lists"}