Home
Softono

Disproject

Open source Emacs Lisp
84
Stars
3
Forks
0
Issues
1
Watchers
7 months
Last Commit

 About Disproject

Transient interface for managing and interacting with projects

Platforms

Web Self-hosted

Languages

Emacs Lisp

Links

Need Help Installing Disproject?

We provide expert installation service for this software. Our team will install, configure, and secure Disproject on your server. plans start at just $30.

Disproject

View on GitHub
  • Disproject

Disproject is a [[https://www.gnu.org/software/emacs/][GNU Emacs]] package that implements [[https://github.com/magit/transient][Transient]] menus for managing and interacting with project files. It aims to provide a featureful, yet extensible interface from which users can intuitively dispatch commands on projects.

Some of its notable features include:

  • a main menu with access to many of the built-in project library's commands and other project-aware commands;
  • auto-detection of current project as the default project to act on from the menu;
  • options for switching to other projects from the menu in order to execute commands elsewhere;
  • a menu for finding common "special" project files, like the dir-locals file;
  • a menu for custom project-local suffix commands;
  • and display-buffer override options, to control where commands should display buffers to.

An Info manual is included with this program under the name =disproject=, which can also be viewed in the Org format at [[file:doc/disproject.org]].

This package was inspired by the project-switch-project command, from the built-in project library. Users may also draw similarities to the Projectile library's projectile-commander.

[[file:images/disproject-dispatch.png]]

See [[file:images/][images]] for more screenshots of Disproject menus.

** Installation

[[https://melpa.org/#/disproject][file:https://melpa.org/packages/disproject-badge.svg]] [[https://stable.melpa.org/#/disproject][file:https://stable.melpa.org/packages/disproject-badge.svg]] [[https://packages.guix.gnu.org/packages/emacs-disproject][file:https://packages.guix.gnu.org/packages/emacs-disproject/badges/latest-version.svg]]

*** MELPA

Disproject is available in [[https://melpa.org/#/disproject][MELPA]] and [[https://stable.melpa.org/#/disproject][MELPA Stable]]. See [[https://melpa.org/#/getting-started][Getting Started]] instructions for using MELPA.

*** Guix

Disproject is also available as a [[https://guix.gnu.org/][GNU Guix]] package.

The stable version can be found in the (gnu packages emacs-xyz) module under the name emacs-disproject. It may be installed in the user profile like so:

#+begin_src sh guix install emacs-disproject #+end_src

Alternatively, one may use the package definition in =./guix.scm= to install a development version of Disproject from the repository. For example, to install in the user profile, run the following in this repository's root directory:

#+begin_src sh guix package --install-from-file=guix.scm #+end_src

** Usage

BEGIN Copied text from Getting Started section of manual.

Disproject is usable out of the box. After it is loaded, the only command that needs to be known is disproject-dispatch, which opens a transient interface - referred to as the "main menu" - with access to a collection of commands that the user can choose from to execute on projects.

The following configuration is a suggested minimal setup that can be added to the user's init file:

#+begin_src emacs-lisp (use-package disproject ;; Replace project-prefix-map' with disproject-dispatch'. :bind ( :map ctl-x-map ("p" . disproject-dispatch))) #+end_src

END Copied text.

See [[file:doc/disproject.org][the manual]] for more information on using and configuring Disproject.