Mirror of GNU Emacs

Related tags

IDE/Tools emacs
Copyright (C) 2001-2021 Free Software Foundation, Inc.
See the end of the file for license conditions.

This directory tree holds version 28.0.50 of GNU Emacs, the extensible,
customizable, self-documenting real-time display editor.

The file INSTALL in this directory says how to build and install GNU
Emacs on various systems, once you have unpacked or checked out the
entire Emacs file tree.

See the file etc/NEWS for information on new features and other
user-visible changes in recent versions of Emacs.

The file etc/PROBLEMS contains information on many common problems that
occur in building, installing and running Emacs.

The file CONTRIBUTE contains information on contributing to Emacs as a

You may encounter bugs in this release.  If you do, please report
them; your bug reports are valuable contributions to the FSF, since
they allow us to notice and fix problems on machines we don't have, or
in code we don't use often.  Please send bug reports to the mailing
list [email protected]  If possible, use M-x report-emacs-bug.

See the "Bugs" section of the Emacs manual for more information on how
to report bugs.  (The file 'BUGS' in this directory explains how you
can find and read that section using the Info files that come with
Emacs.)  For a list of mailing lists related to Emacs, see
<https://savannah.gnu.org/mail/?group=emacs>.  For the complete
list of GNU mailing lists, see <https://lists.gnu.org/>.

The 'etc' subdirectory contains several other files, named in capital
letters, which you might consider looking at when installing GNU

The file 'configure' is a shell script to acclimate Emacs to the
oddities of your processor and operating system.  It creates the file
'Makefile' (a script for the 'make' program), which automates the
process of building and installing Emacs.  See INSTALL for more
detailed information.

The file 'configure.ac' is the input used by the autoconf program to
construct the 'configure' script.

The shell script 'autogen.sh' generates 'configure' and other files by
running Autoconf (which in turn uses GNU m4), and configures files in
the .git subdirectory if you are using Git.  If you want to use it,
you will need to install recent versions of these build tools.  This
should be needed only if you edit files like 'configure.ac' that
specify Emacs's autobuild procedure.

The file 'Makefile.in' is a template used by 'configure' to create

The file 'make-dist' is a shell script to build a distribution tar
file from the current Emacs tree, containing only those files
appropriate for distribution.  If you make extensive changes to Emacs,
this script will help you distribute your version to others.

There are several subdirectories:

'src'       holds the C code for Emacs (the Emacs Lisp interpreter and
            its primitives, the redisplay code, and some basic editing
'lisp'      holds the Emacs Lisp code for Emacs (most everything else).
'leim'      holds the original source files for the generated files
            in lisp/leim.  These form the library of Emacs input methods,
            required to type international characters that can't be
            directly produced by your keyboard.
'lib'       holds source code for libraries used by Emacs and its utilities
'lib-src'   holds the source code for some utility programs for use by or
            with Emacs, like movemail and etags.
'lwlib'     holds the sources of the Lucid Widget Library used on X.
'oldXMenu'  source files from X11R2 XMenu library, used in non-toolkit builds.
'etc'       holds miscellaneous architecture-independent data files Emacs
            uses, like the tutorial text and tool bar images.
            The contents of the 'lisp', 'leim', 'info', and 'doc'
            subdirectories are architecture-independent too.
'info'      holds the Info documentation tree for Emacs.
'doc/emacs' holds the source code for the Emacs Manual.  If you modify the
            manual sources, you will need the 'makeinfo' program to produce
            an updated manual.  'makeinfo' is part of the GNU Texinfo
            package; you need a suitably recent version of Texinfo.
'doc/lispref'   holds the source code for the Emacs Lisp reference manual.
'doc/lispintro' holds the source code for the Introduction to Programming
                in Emacs Lisp manual.
'msdos'     holds configuration files for compiling Emacs under MS-DOS.
'nextstep'  holds instructions and some other files for compiling the
            Nextstep port of Emacs, for GNUstep and macOS Cocoa.
'nt'        holds code and documentation for building Emacs on MS-Windows.
'test'      holds tests for various aspects of Emacs's functionality.
'modules'   holds the modhelp.py helper script.
'admin'     holds files used by Emacs developers, and Unicode data files.
'build-aux' holds auxiliary files used during the build.
'm4'        holds Autoconf macros used for generating the configure script.

   Building Emacs on non-Posix platforms requires tools that aren't part
of the standard distribution of the OS.  The platform-specific README
files and installation instructions should list the required tools.


In copyright notices where the copyright holder is the Free Software
Foundation, then where a range of years appears, this is an inclusive
range that applies to every year in the range.  For example: 2005-2008
represents the years 2005, 2006, 2007, and 2008.

This file is part of GNU Emacs.

GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
  • update pinyi

    update pinyi

    update lisp/calendar/cal-china.el's chinese celestial and terrestrial name from pinyin to real chinese character

    opened by guoxiangyang 14
  • Update unidata-gen.el

    Update unidata-gen.el

    something wrong with the new code that can't compile

    opened by hyphenlee 4
  • Allow setting driver options via a customizable variable

    Allow setting driver options via a customizable variable

    This PR addresses GNU Emacs bug#42761, adding a variable for passing driver options to libgccjit.

    Those are necessary for Darwin at least, where the linker does not understand the LINKER_FLAGS environment variable.

    Inclusion of this patch is pending copyright assignment paperwork (in progress!)

    opened by antifuchs 2
  • Fix long line perf of compilation-shell-minor-mode

    Fix long line perf of compilation-shell-minor-mode

    To reproduce the issue of Emacs freezing on long lines, do the following:

    M-x shell
    M-x compilation-shell-minor-mode
    $ python3 -c 'print("x"*1024*8)'

    Depending on the machine configuration, make your lines longer. 1024*8 is enough to freeze my MacBook Pro 2019 visibly but I need more characters to slow down an XPS-13 running Ubuntu.

    In the real world the issue comes up when I'm enjoying my compilation-shell-minor-mode buffer but accidentally cat or print some data with very long lines. Then Emacs freezes and I experience one of my very rare moments of unhappiness with the editor.

    Using M-x profiler-start, profiler-stop, profiler-report the culprit is compilation-parse-errors. The function loops over many (about 50) patterns of potential error output and scans the buffer for them repeatedly.

    The PR edits the function to use a limited version of re-search-forward. Instead of finding the pattern everywhere, it only looks for the pattern in the first 1024 chars of every line. It seems plausible that real-world compiler warnings would sit close to the beginning of lines.

    With the patch the experience (in combination with global-so-long-mode) becomes tolerable; while not lightning fast, Emacs is a lot more responsive in this situation and I as a user retain control to fix the problem, such as comint-clear-buffer etc.

    opened by t0yv0 2
  • Emacs 25 - dont merge

    Emacs 25 - dont merge

    Don't merge

    opened by tristanfarran 1
  • bad aux config?

    bad aux config?

    opened by tristanfarran 1
  • * lisp/net/browse-url.el: Add vivaldi support

    * lisp/net/browse-url.el: Add vivaldi support

    I just added support for vivaldi browser

    opened by seblemaguer 1
  • Emacs 27

    Emacs 27

    opened by leechhui 1
  • update tcl.el

    update tcl.el

    "wish" command can be undesirable sometimes (specially for non-gui programs). "tclsh" is a better choice(with less baggage) to start the tcl process.

    opened by bilalkhanqadri 1
  • remove map restriction on org-capture header

    remove map restriction on org-capture header

    org-capture-header only allows keys from the org-capture-map, meaning shorter, custom bindings such as spacemacs's ", ," won't show up. This change removes the restriction and thus allows the bindings to show up 😄.

    opened by mohkale 1
  • Add debug declaration to widget-specify-insert

    Add debug declaration to widget-specify-insert

    important for user-defined editable-list widget with a modified set of buttons. In that use-case function widget-editable-list-entry-create needs to be imitated for that purpose.

    opened by TobiasZawada 1
  • Emacs 26: Emacs not response when press Enter in shell mode

    Emacs 26: Emacs not response when press Enter in shell mode

    Windows 10 (64 bit), Emacs 26.1

    1. I download Emacs 26 from here : http://ftp.gnu.org/gnu/emacs/windows/emacs-26/emacs-26.1-x86_64.zip
    2. Unpack and run pure Emacs (no external packages)
    3. Connect android device to my computer
    4. M-x shell
    5. Run the next command adb logcat -vtime. Tool logcat- is a tool from Google to see android's device logging. It's very helpful.
    6. This tool (logcat) generate many text interactively in shell.
    7. So I press button arrow up and move cursor to the center of screen.
    8. Text is continues to be generated.
    9. And now I press button Enter
    10. As result Emacs not response any more. Show progress bar forever. Nothing help. Only kill Emacs process from Task Manager.

    Here screenshot: emacs_freeze

    Why this is happened?

    opened by alexei-28 2
  • Correct version: eshell-uniquify-list

    Correct version: eshell-uniquify-list

    Correct shell-uniquify-list to eshell-uniquify-list.

    opened by TobiasZawada 1
  • Fix `class is' indentation in Fortran 2003.

    Fix `class is' indentation in Fortran 2003.

    Only type is' was correctly indented inselect type' construction.

    opened by chapouvalpin 2
  • Fixed some UI issues.

    Fixed some UI issues.

    Fixed some annoying issues with the Emacs user-interface. Some of these fixes may also affect Emacs core, but at least it works for me. --ths

    opened by devio 15
Mirror of GNU Emacs

Copyright (C) 2001-2021 Free Software Foundation, Inc. See the end of the file for license conditions. This directory tree holds version 28.0.50 of

null 3.3k Jan 12, 2022
GNU FM is a music community platform

GNU FM A music community platform in PHP. License License: Affero GPL version 3.0 or later. Main GNU FM developers: Michael Sheldon (elleo) Clint Adam

Foo Communications 42 Dec 17, 2021
Anbox is a container-based approach to boot a full Android system on a regular GNU/Linux system

Anbox Anbox is a container-based approach to boot a full Android system on a regular GNU/Linux system like Ubuntu. In other words: Anbox will let you

Anbox 7.3k Jan 12, 2022
Enjoy Twitch on your GNU/Linux desktop

GNOME Twitch Enjoy Twitch on your GNU/Linux desktop. Install Dependencies meson >= 0.36.0 (install only) ninja (install only) gtk+-3.0 >= 3.20 libsoup

Vincent 445 Dec 28, 2021
Glances an Eye on your system. A top/htop alternative for GNU/Linux, BSD, Mac OS and Windows operating systems.

Glances - An eye on your system Summary Glances is a cross-platform monitoring tool which aims to present a large amount of monitoring information thr

Nicolas Hennion 19.8k Jan 17, 2022
Free (libre) font editor for Windows, Mac OS X and GNU+Linux

FontForge FontForge is a free (libre) font editor for Windows, Mac OS X and GNU+Linux. Use it to create, edit and convert fonts in OpenType, TrueType,

null 4.1k Jan 21, 2022
RGB lighting management front-end application for GNU/Linux. Powered by OpenRazer (but soon to be vendor agnostic)

An open source RGB lighting management front-end application to customise OpenRazer peripherals on GNU/Linux. Soon to be vendor agnostic! The next gen

Polychromatic 764 Jan 18, 2022
Baroque music scores, typeset with GNU LilyPond

nénuvar - baroque music scores typeset with GNU LilyPond Available scores: J.B. Lully * La Revente des habits (ballet, LWV05) * Amour malade (ballet

Nicolas Sceaux 37 Dec 16, 2021
Mirror of the official PostgreSQL GIT repository. Note that this is just a *mirror* - we don't work with pull requests on github. To contribute, please see https://wiki.postgresql.org/wiki/Submitting_a_Patch

PostgreSQL Database Management System ===================================== This directory contains the source code distribution of the PostgreSQL da

PostgreSQL 9.5k Jan 15, 2022
Verbatim mirror of the git.drupal.org repository for Drupal core. Please see the https://github.com/drupal/drupal#contributing. PRs are not accepted on GitHub.

Drupal is an open source content management platform supporting a variety of websites ranging from personal weblogs to large community-driven websites

Drupal 3.6k Jan 14, 2022
The TYPO3 Core - Enterprise Content Management System. Synchronized read-only mirror of http://git.typo3.org/Packages/TYPO3.CMS.git

TYPO3 CMS TYPO3 is an open source PHP based web content management system released under the GNU GPL. TYPO3 is copyright (c) 1999-2021 by Kasper Skaar

TYPO3 GitHub Department 820 Jan 20, 2022
WordPress, Git-ified. This repository is just a mirror of the WordPress subversion repository.

WordPress, Git-ified. This repository is just a mirror of the WordPress subversion repository.

null 15.8k Jan 18, 2022
mirror http://svn.calendarserver.org/repository/calendarserver/CalendarServer/trunk

Getting Started This is the core code base for the Calendar and Contacts Server, which is a CalDAV, CardDAV, WebDAV, and HTTP server. For general info

Trevor Wennblom 11 Apr 2, 2018
Mirror of the official Asterisk (https://www.asterisk.org) Project repository. No pull requests here please. Use Gerrit:

The Asterisk(R) Open Source PBX By Mark Spencer <[email protected]> and the Asterisk.org developer community. Copyright (C) 2001-202

The Asterisk Project 1.2k Jan 20, 2022
Mirror of FreeIPA, an integrated security information management solution

FreeIPA Server FreeIPA allows Linux administrators to centrally manage identity, authentication and access control aspects of Linux and UNIX systems b

FreeIPA 613 Jan 17, 2022
Mirror of the legacy Launchpad repository

Libravatar - free online avatar service Getting involved If you'd like to get involved in the development of Libravatar, here are a few useful pointer

Libravatar Project 27 Mar 8, 2019
OpenStack Storage (Swift). Mirror of code maintained at opendev.org.

OpenStack Swift OpenStack Swift is a distributed object storage system designed to scale from a single machine to thousands of servers. Swift is optim

Mirrors of opendev.org/openstack 2.3k Jan 15, 2022
https://gitlab.com/samba-team/samba is the Official GitLab mirror of https://git.samba.org/samba.git -- Merge requests should be made on GitLab (not on GitHub)

About Samba Samba is the standard Windows interoperability suite of programs for Linux and Unix. Samba is Free Software licensed under the GNU General

Samba Team 628 Jan 23, 2022
Let's Upload That Image ! Read-only mirror of https://framagit.org/fiat-tux/hat-softwares/lutim

Lutim What Lutim means? It means Let's Upload That Image. What does it do? It stores images and allows you to see them, download them or share them on

Luc Didry 167 Nov 19, 2021
Read-only mirror of https://framagit.org/fiat-tux/hat-softwares/lufi/

Lufi What does Lufi mean? Lufi means Let's Upload that FIle. It's a E2E encrypted file sharing software. Which browsers are compatible? Lufi is tested

Luc Didry 202 Dec 31, 2021
Simple static file server with cli and webinterface. This is just a mirror repo

Surfer Surfer is a Simple static file server. It comes with a commandline tool to upload files from your local folders and a webinterface to manage fi

Cloudron 42 Jan 16, 2022
:mailbox_with_mail: Simple, private file sharing. Mirror of https://gitlab.com/timvisee/send

Send A fork of Mozilla's Firefox Send. Mozilla discontinued Send, this fork is a community effort to keep the project up-to-date and alive. Forked at

Tim Visée 1.9k Jan 24, 2022
Simple static file server with cli and webinterface. This is just a mirror repo

Surfer Surfer is a Simple static file server. It comes with a commandline tool to upload files from your local folders and a webinterface to manage fi

Cloudron 41 Dec 26, 2021
Mirror of Apache Openmeetings

Apache OpenMeetings provides: video conferencing instant messaging white board collaborative document editing other groupware tools It uses API functi

The Apache Software Foundation 520 Jan 9, 2022
Free Open Source Document Management System (mirror, no pull request or issues)

Mayan EDMS is a document management system. Its main purpose is to store, introspect, and categorize files, with a strong emphasis on preserving the c

Mayan EDMS 304 Dec 27, 2021
Lightweight URL shortener. Read-only mirror of https://framagit.org/fiat-tux/hat-softwares/lstu

Lstu What does Lstu mean? It means Let's Shorten That Url. License Lstu is licensed under the terms of the WTFPL. See the LICENSE file. Installation P

Luc Didry 166 Dec 16, 2021