Md Readme



  1. Update the README.md with details of changes to the interface, this includes new environment variables, exposed ports, useful file locations and container parameters. Increase the version numbers in any examples files and the README.md to the new version that this Pull Request would represent. The versioning scheme we use is SemVer.
  2. Update README.md 35b5c62a cthscr authored Mar 04, 2021. 35b5c62a To learn more about this project, read the wiki. README.md 5.15 KB Edit Web IDE. Replace README.md.
  1. Md Readme Table
  2. Readme.md Github
  3. Readme Md Viewer
  4. Md Readme Editor
  5. Md Readme Format
  6. Md Readme

Revision control

Other Tools

# Thunderbird

Upload resume.md to stranger server? + Try Offline Web App! How to use md2pdf? Click button choose.md file. Edit in editor (left panel). Click Transform! Switch 'Destination' to Save as PDF. Chrome recommended; Tips. Resize the layout what you want. After click Transform button, inverse the checkbox of 'Headers and Footers. GitLab Enterprise Edition.

Thunderbird is a powerful and customizable open source email client with lots of users. It is based on the same platform that Firefox uses.
## Getting Started
This README will try and give you the basics that you need to get started, more comprehensive documentation is available on the [Thunderbird Developer Website](https://developer.thunderbird.net).
### Mozilla Code Base
Md readme file
Thunderbird is built on the Mozilla platform, the same base that Firefox is built from. As such the two projects share a lot of code and much of the documentation for one will apply, in many ways, to the other.
In order to be able to build Thunderbird - you will need the mozilla-central repository as well as the comm-central repository (where this README lives). Check out our [Getting Started documentation](https://developer.thunderbird.net/thunderbird-development/getting-started) for instructions on how and where to get the source code.
### mozilla-central vs. comm-central
The mozilla-central repostitory contains the Firefox codebase and all of the platform code. The comm-central repository is added as a subdirectory 'comm/' under mozilla-central. This contains the code for Thunderbird.
## Building Thunderbird
### Build Prerequisites
This README assumes that you already have the prerequisite software required to build Thunderbird. If you have not already done so, please complete the instructions for your operating system and then continue following this guide:
- [Windows Build Prerequisites](https://developer.thunderbird.net/thunderbird-development/building-thunderbird/windows-build-prerequisites)
- [Linux Build Prerequisites](https://developer.thunderbird.net/thunderbird-development/building-thunderbird/linux-build-prerequisites)
- [macOS Build Prerequisites](https://developer.thunderbird.net/thunderbird-development/building-thunderbird/macos-build-prerequisites)
### Build Configuration
To build Thunderbird, you need to create a file named `mozconfig` (can also be `.mozconfig`) to the root directory of the mozilla-central checkout that contains the option `comm/mail` enabled. You can create a file with this line by doing this in the root source directory:
```text
echo 'ac_add_options --enable-application=comm/mail' > mozconfig
```
**If you omit this line, the build system will build Firefox instead**. Other build configuration options can be added to this file, although it's **strongly recommended** that you only use options that you fully understand. For example, to create a debug build instead of a release build, that file would also contain the line:
```text
ac_add_options --enable-debug
```
_Each of these ac_add_options entries needs to be on its own line._
For more on configuration options, see the page [Configuring build options](https://developer.mozilla.org/en/Configuring_Build_Options). Note that if you use an MOZ_OBJDIR it cannot be a sibling folder to the root source directory. Use an absolute path to be sure!
### Building
**Before you start**, make sure that the version you checked out is not busted. For `hg` tip, you should see green Bs on [https://treeherder.mozilla.org/#/jobs?repo=comm-central](https://treeherder.mozilla.org/#/jobs?repo=comm-central)
To start the build, cd into the root source directory, and run:

Md Readme Table

```text
./mach build
```
mach is our command-line tool to streamline common developer tasks. See the [mach](https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/mach) article for more.
Building can take a significant amount of time, depending on your system, OS, and chosen build options. Linux builds on a fast box may take under _15 minutes_, but Windows builds on a slow box may take _several hours_.
### Make Your Build Faster
Follow this guide to rely on `ccache` and other [Tips for making builds faster](../getting-started.md).
## Running Thunderbird
To run your build, you can use:
```text

Readme.md Github

./mach run
```
There are various command line parameters you can add, e.g. to specify a profile, such as: -no-remote -P testing --purgecaches
Various temporary files, libraries, and the Thunderbird executable will be found in your object directory (under `comm-central/`), which is prefixed with `obj-`. The exact name depends on your system and OS. For example, a Mac user may get an object directory name of `obj-x86_64-apple-darwin10.7.3/`.
The Thunderbird executable in particular, and its dependencies are located under the `dist/bin` folder under the object directory. To run the executable from your `comm-central` working directory:
* Windows: `obj-.../dist/bin/thunderbird.exe`
* Linux: `obj-.../dist/bin/thunderbird`
* macOS: `obj-.../dist/Daily.app/Contents/MacOS/thunderbird`
## Update and Build Again
To pull down the latest changes, in the mozilla directory run the following commands:
```text
hg pull -u
cd comm
hg pull -u
Md Readme
cd ..
```
or to do it via one command:
```text
hg pull -u && cd comm && hg pull -u
```
The just run the `./mach build` command detailed in the [Building](./#building)instructions above. This will only recompile files that changed, but it may still take a long time.
## Rebuilding
To build after changes you can simply run:
```text
Readme template
./mach build
```
### Rebuilding Specific Parts
If you have made many changes, but only want to rebuild specific parts, you may run the following commands.
#### C or C++ Files:
Md readme editor
```text
./mach build binaries
```
#### JavaScript or XUL Files (Windows Only):
```text
./mach build path/to/dir
```
Replace `path/to/dir` with the directory with the files changed.
This is the tricky bit since you need to specify the directory that installs the files, which may be a parent directory of the changed file's directory. For example, to just rebuild the Lightning calendar extension:
```text
./mach build comm/calendar/lightning

Readme Md Viewer

```
## Contributing
### Getting Plugged into the Community
We have a complete listing of the ways in which you can get involved with Thunderbird [on our website](https://thunderbird.net/get-involved). Below are some quick references from that page that you can use if you are looking to contribute to Thunderbird core right away.
#### Mailing Lists
If you want to participate in discussions about Thunderbird development, there are two main mailing lists you want to join.
1. [**TB-Planning**](https://wiki.mozilla.org/Thunderbird/tb-planning)**:** This mailing list is higher level topics like: the future of Thunderbird, potential features, and changes that you would like to see happen. It is also used to discuss a variety of broader issues around community and governance of the project.
2. [**Maildev**](http://lists.thunderbird.net/mailman/listinfo/maildev_lists.thunderbird.net)**:** A moderated mailing list for discussing engineering plans for Thunderbird. It is a place where you can raise questions and ideas for core Thunderbird development.
#### IRC

Md Readme Editor

If you want to ask questions about how to hack on Thunderbird, the IRC channel you want to join is [#maildev on irc.mozilla.org](irc://irc.mozilla.org/maildev).
### Report a Bug and Request Features
### [Bugzilla](https://bugzilla.mozilla.org/enter_bug.cgi?product=Thunderbird)
Thunderbird uses bugzilla for reporting and tracking bugs as well as enhancement requests. If you want to become a contributor to Thunderbird, you will need an account on Bugzilla.
### Fixing a Bug and Submitting Patches
All the issues, bugs, work in progress patches, or updates related to Thunderbird, are listed on Bugzilla and are properly organized per **Product**, **Component**, and **Status**. For instance you can see how they are listed by looking at [recent bugs for Thunderbird](https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&product=Thunderbird&bug_status=UNCONFIRMED&bug_severity=blocker&bug_severity=critical&bug_severity=major&bug_severity=normal&bug_severity=minor&bug_severity=trivial&chfieldfrom=-30d&chfield=%5BBug%20creation%5D&list_id=14706087).
#### Create a Bugzilla account
Creating an account is necessary in order to submit patches, leave comments, and interact with any other aspect of Bugzilla. If you're currently using an `IRC` username in the `#maildev` channel, we recommend saving your profile name with the current format `Firstname Lastname (:username)` in order to be easily searchable and allow the Thunderbird team to offer better support.
#### Find a Bug
Use the [Advanced Search](https://bugzilla.mozilla.org/query.cgi?format=advanced) section to find bugs you want to take care of, and be sure that the bug doesn't currently have any user listed as _Assignee_ and the _Status_ is set to `NEW`. You can see a list of 'easy' bugs for beginners [via this query](https://bugzilla.mozilla.org/buglist.cgi?bug_status=NEW&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other&f1=status_whiteboard&o1=allwordssubstr&product=Calendar&product=Chat%20Core&product=MailNews%20Core&product=Thunderbird&resolution=---&v1=good%20first%20bug&list_id=14884036). However, we assume you came here to fix your 'pet hate' bug, so you already likely have a bug to work with.
#### Search for Code References
Making sense of the **Thunderbird** source code, and knowing where to look, will take some time. The code base is pretty big and if you never worked with `XBL` or `Custom Elements` it can be overwhelming at first. We recommend using our code search engine, [Searchfox](https://searchfox.org/comm-central/source/), to inspect the source code and find snippets and references to help you out while investigating a bug.
#### Mercurial Workflow
Mercurial is pretty flexible in terms of allowing you to write your own code and keep it separate from the main code base. You can use Mercurial Bookmarks or Mercurial Queues for managing your work. We have guides created for [bookmarks](https://developer.thunderbird.net/contributing/fixing-a-bug/using-mercurial-bookmarks) and [queues](https://developer.thunderbird.net/contributing/fixing-a-bug/using-mercurial-queues) on our developer website. While some find Mercurial Queues easier to work with, support for them is being deprecated in various Mozilla tools.
Once you finished taking care of your favorite bug and using Mercurial to commit and export your patch, you can upload it to Bugzilla for review.
#### Upload a Patch
Open your patch file in your code editor and be sure it includes all your code changes, and your name and commit message at the top. You can see an example of a patch for this [README here](https://bug1547325.bmoattachments.org/attachment.cgi?id=9093146).
If everything looks good, you can access the selected bug in Bugzilla and click on the **Attach File** link located above the first comment.
#### Ask for a Review
When uploading a patch to Bugzilla, you can request a review from the user who opened the bug or another developer. Simply select the `?` in the dropdown selector in the _review_ option of the **Flags** section. An input field will appear which will allow you to type the name or username of the user you want to review your patch. You can see an example of [a patch on Bugzilla here](https://bugzilla.mozilla.org/show_bug.cgi?id=1547325#c1).

Ruby is the interpreted scripting language for quick and easyobject-oriented programming. It has many features to process text files andto do system management tasks (as in Perl). It is simple, straight-forward,and extensible.

Features of Ruby

  • Simple Syntax

  • Normal Object-oriented Features (e.g. class, method calls)

  • Advanced Object-oriented Features (e.g. mix-in,singleton-method)

  • Operator Overloading

  • Exception Handling

  • Iterators and Closures

  • Garbage Collection

  • Dynamic Loading of Object Files (onsome architectures)

  • Highly Portable (works on many Unix-like/POSIX compatible platforms as wellas Windows, macOS, Haiku, etc.) cf. github.com/ruby/ruby/blob/trunk/doc/contributing.rdoc#platform-maintainers

How to get Ruby

For a complete list of ways to install Ruby, including using third-partytools like rvm, see:

www.ruby-lang.org/en/downloads/

The trunk of the Ruby source tree can be checked out with the followingcommand:

Or if you are using git then use the following command:

There are some other branches under development. Try the following commandto see the list of branches:

Or if you are using git then use the following command:

Ruby home page

Md Readme Format

The URL of the Ruby home page is:

www.ruby-lang.org/

Mailing list

There is a mailing list to talk about Ruby. To subscribe to this list,please send the following phrase:

in the mail body (not subject) to the address ruby-talk-request@ruby-lang.org.

How to compile and install

Md Readme

This is what you need to do to compile and install Ruby:

  1. If you want to use Microsoft Visual C++ to compile Ruby, read win32/README.win32 instead of this document.

  2. If ./configure does not exist or is older thanconfigure.ac, run autoconf to (re)generateconfigure.

  3. Run ./configure, which will generate config.h andMakefile.

    Some C compiler flags may be added by default depending on yourenvironment. Specify optflags=.. and warnflags=..as necessary to override them.

  4. Edit defines.h if you need. Usually this step will not beneeded.

  5. Remove comment mark(#) before the module names fromext/Setup (or add module names if not present), if you want tolink modules statically.

    If you don't want to compile non static extension modules (probably onarchitectures which do not allow dynamic loading), remove comment mark fromthe line '#option nodynamic' in ext/Setup.

    Usually this step will not be needed.

  6. Run make.

    • On Mac, set RUBY_CODESIGN environment variable with a signing identity. Ituses the identity to sign ruby binary. See also codesign(1).

  7. Optionally, run 'make check' to check whether thecompiled Ruby interpreter works well. If you see the message 'checksucceeded', your Ruby works as it should (hopefully).

  8. Optionally, run make update-gems and makeextract-gems.

    If you want to install bundled gems, run make update-gems andmake extract-gems before running make install.

  9. Run 'make install'.

    This command will create the following directories and install files intothem.

    • ${DESTDIR}${prefix}/bin

    • ${DESTDIR}${prefix}/include/ruby-${MAJOR}.${MINOR}.${TEENY}

    • ${DESTDIR}${prefix}/include/ruby-${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}

    • ${DESTDIR}${prefix}/lib

    • ${DESTDIR}${prefix}/lib/ruby

    • ${DESTDIR}${prefix}/lib/ruby/${MAJOR}.${MINOR}.${TEENY}

    • ${DESTDIR}${prefix}/lib/ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}

    • ${DESTDIR}${prefix}/lib/ruby/site_ruby

    • ${DESTDIR}${prefix}/lib/ruby/site_ruby/${MAJOR}.${MINOR}.${TEENY}

    • ${DESTDIR}${prefix}/lib/ruby/site_ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}

    • ${DESTDIR}${prefix}/lib/ruby/vendor_ruby

    • ${DESTDIR}${prefix}/lib/ruby/vendor_ruby/${MAJOR}.${MINOR}.${TEENY}

    • ${DESTDIR}${prefix}/lib/ruby/vendor_ruby/${MAJOR}.${MINOR}.${TEENY}/${PLATFORM}

    • ${DESTDIR}${prefix}/lib/ruby/gems/${MAJOR}.${MINOR}.${TEENY}

    • ${DESTDIR}${prefix}/share/man/man1

    • ${DESTDIR}${prefix}/share/ri/${MAJOR}.${MINOR}.${TEENY}/system

    If Ruby's API version is 'x.y.z', the${MAJOR} is 'x', the ${MINOR} is'y', and the ${TEENY} is'z'.

    NOTE: teeny of the API version may be different from oneof Ruby's program version

    You may have to be a super user to install Ruby.

If you fail to compile Ruby, please send the detailed error report with theerror log and machine/OS type, to help others.

Some extension libraries may not get compiled because of lack of necessaryexternal libraries and/or headers, then you will need to run'make distclean-ext' to remove old configuration afterinstalling them in such case.

Copying

See the file COPYING.

Feedback

Questions about the Ruby language can be asked on the Ruby-Talk mailinglist (www.ruby-lang.org/en/community/mailing-lists)or on websites like (stackoverflow.com).

Bug reports should be filed at bugs.ruby-lang.org. Read HowToReportfor more information.

Contributing

See the file CONTRIBUTING.md

The Author

Ruby was originally designed and developed by Yukihiro Matsumoto (Matz) in1995.