https://github.com/knu/emacsc
Emacs as a command line tool
https://github.com/knu/emacsc
Last synced: about 1 year ago
JSON representation
Emacs as a command line tool
- Host: GitHub
- URL: https://github.com/knu/emacsc
- Owner: knu
- License: bsd-2-clause
- Created: 2013-01-22T07:05:24.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2024-12-06T05:59:21.000Z (over 1 year ago)
- Last Synced: 2025-03-18T11:05:58.940Z (over 1 year ago)
- Language: Perl
- Size: 60.5 KB
- Stars: 19
- Watchers: 3
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Emacs as a command line tool
## emacsc(1)
Emacsc(1) is a wrapper of emacsclient(1) for use within a terminal,
which helps use Emacs more as command line tool than just a standalone
environment.
usage: emacsc [-cdgkn] [-s NAME] [-e EXPR | -x EXPR | -f FUNC] [-C DIR] [FILE..]
-h, --help show this help
-d, --daemon run Emacs as daemon and quit
-k, --kill kill Emacs daemon
-g, --no-tty do not prefer tty
-c, --create-frame
create a new frame
-n, --no-wait
do not wait and return immediately
-s, --socket-name=NAME
specify the file name of the socket file name for
communication
-e, --eval=EXPR
evaluate the Lisp expression EXPR and print the
result without a frame opened
-x, --execute=EXPR
interactively execute the Lisp expression EXPR
-f, --funcall=FUNC
interactively call the Lisp function FUNC
-C, --chdir, --directory=DIR
change to directory DIR before running code
This command is a wrapper of emacsclient for use within a terminal.
It adds the -t option so that Emacs opens a new frame on the current
terminal, making the command itself suitable as a value for EDITOR.
A byte-compiled initialization file is automatically removed before
running Emacs if outdated, i.e. older than the original file.
In order for the -x and -f options, and the following commands to
work, install lisp/emacsc.el into a directory in your load-path and
add this to your ~/.emacs.d/init.el:
(require 'emacsc)
Or install emacsc from an ELPA package and you are good to go.
## dired(1)
Dired(1) is a frontend command to invoke dired.
usage: dired [-n] [directory|file]
-n, --no-wait do not wait and return immediately
It takes a directory or a file name, defaulted to the current
directory, to open with dired. If a non-directory is given, the point
will be automatically moved to the file on startup.
## ediff(1), ediff-merge(1)
Ediff(1) and ediff-merge(1) are frontend commands to invoke ediff
functions.
usage: ediff file1 file2
usage: ediff-merge local remote base merged
ediff-merge local remote merged
To use them from Git, put the following lines in your
~/.config/git/config (or ~/.gitconfig).
[diff]
tool = ediff
[difftool "ediff"]
cmd = ediff \"$LOCAL\" \"$REMOTE\"
[merge]
tool = ediff
[mergetool "ediff"]
cmd = ediff-merge \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\"
trustExitCode = true
## evil(1)
Evil(1) is a command to edit given files in evil-local-mode.
usage: evil [-s NAME] FILE..
-h, --help show this help
-s, --socket-name=NAME
specify the file name of the socket file name for
communication
## magit(1)
Magit(1) is a frontend command to invoke magit-status.
usage: magit [directory]
It runs magit-status on a given directory. If omitted, ask where with
the current directory as default.
## SEE ALSO
- [e(1) - a smart wrapper for $EDITOR](https://github.com/knu/e)
## AUTHOR
Copyright (c) 2012-2024 Akinori MUSHA.
Licensed under the 2-clause BSD license. See `LICENSE.txt` for
details.
Visit [GitHub Repository](https://github.com/knu/emacsc) for the latest
information.