Commit User Manual
Commit is a tool for writing. It is meant to stand at the half-way point between a typewriter and modern word processor software. If you find yourself constantly distracted by an urge to edit and refine the text you have already written instead of writing more text, Commit might be for you.
Only the most recent paragraph is editable. And once you hit “enter” at the end of the paragraph, it is “committed.” Now you need to write the next paragraph. You can worry about editing and refinement later. For now, get the words on the page.
The main Commit screen is simple.
The large text field at the top is the text you have already committed. It is visible, but it is not editable.
The smaller text field at the bottom is your current working paragraph. It’s editable. Make whatever changes you need. But when you press “enter” or click on the “commit” button, that text moves into the top field and is no longer editable.
If you made a mistake, you can pull back a single paragraph at a time into the working field. Click the “pull back” icon, or press “backspace” from the first position in the working field.
There are a few settings or preferences that you can set. To change them, click on the “Settings” icon in the toolbar or go to “File > Preferences” in the menu.
- Startup Settings
- “Show splash screen” – default “on” – if you don’t like seeing the splash screen when the application starts, you can disable this checkbox.
- “Reopen last document” – default “on” – by default, when you open Commit it will reopen the document that you had open the last time you were in the app. If you don’t like that, you can disable this checkbox and Commit will default to a blank document.
- General Settings
- “Auto-save with each commit” – default “on” – every time you press “enter” or click the “commit” button, the file will be saved. If you prefer to save only when you manually tell the app to save, you can disable this checkbox.
- “Sounds on commit and pull” – default “off” – some writers want a bit of extra positive reinforcement. Enabling this setting will result in a nice “ding” sound every time you commit some text.
- “Disable scrolling of committed text” – default “off” – normally you can scroll around in the committed text field, even though you can’t edit it. If even this is too distracting, you can toggle this checkbox. If enabled the committed field will not be scrollable and will only show the most recently committed text.
- Font Size
- Commit tries to set reasonable default text sizes, but if you prefer it larger or smaller you can adjust text size here.
- Status Bar
- “Show word count” – default “on” – by default, the count of committed words is shown in the status bar at the bottom left. If you find this distracting, you can disable it.
- “Show session word count” – default “on” – by default, we keep track of how many words you have committed in the current session. This, too, can be disabled if you find it distracting.
- Check for Updates
- Here you can choose how often you want the app to check for available updates. You can choose “never,” “daily,” “weekly,” and “monthly.” The default setting is “weekly.”
- The “reset” button at the bottom left will reset all options to their defaults and close the application. Next time you start it, it will behave like you’ve never used it before.
Full Screen View
Clicking the “Full Screen” icon in the toolbar (or “View> Full Screen” in the menu) will toggle the full screen mode. Full screen mode takes over the whole screen, including the normal taskbars, menus, and docks of the operating system you are in.
Full screen mode is an immersive writing environment.
Commit will remember the position of your writing window between launches. If it’s in full screen mode when you quit, it’ll be in full screen mode again when you start it next. If it’s maximized when you quit, it’ll be maximized when you restart. If it’s in a windowed mode, it will remember the size and position.
Import and Export
You can import or export files from Commit using “Import” and “Export” in the “File” menu. You can also export the entire document to your system clipboard to be pasted into other applications.
Commit’s import and export features rely on an open source document conversion tool called Pandoc, which is bundled in the installation packages. Commit supports importing and exporting the following formats:
- HyperText Markup Language (HTML) (*.html) — recommended interchange format
- CommonMark (Markdown) (*.md)
- DocBook (*.dbk)
- EPUB eBook (*.epub)
- LibreOffice Text (OpenDocument Text) (*.odt)
- Microsoft Word (Office Open XML Document) (*.docx)
- Plain Text (*.txt)
- Rich Text Format (*.rtf)
CommonMark (Markdown) and Plain Text, which are simple text formats, are exported using the default line endings on the system where you are running Commit: /n on Mac and Linux, and /r/n on Windows.
Only HyperText Markup Language (HTML), CommonMark (Markdown), and Plain Text are supported for export to the clipboard. Most word processors and content management systems will accept HTML formatted clipboard content, so it is usually the best option.
Exporting — Technical Details
First, Commit translates all single line breaks in the CTXT formatted document (details below) into CommonMark (Markdown) compliant line breaks — i.e., it adds two spaces before the line break. This is the only necessary change to CTXT files to make them compatible with Pandoc’s CommonMark parser.
It then runs the document through Pandoc using the CommonMark input format and the desired output format. Note that this translation step is done even when the desired output format is CommonMark in order to ensure the best compatibility with other Markdown parsers.
The Commit CTXT Format
The native CTXT file format for Commit is a variant of the CommonMark version of the Markdown format. The file extension is *.ctxt and the MIME type is text/com.intersanity.commit.
Fundamentally, CTXT is a plain text format. If you open a CTXT file in Notepad, Kate, TextEdit, Nano, or any other plain text editor, it will be comprehensible, although there might be some line-break oddities if you are viewing it on Windows. Your content is yours; there’s no reason to obscure or complicate it.
Generally, you should not edit CTXT files outside of Commit. Use Commit’s export tools to convert your document for editing in other applications, and then use the import tools to bring it back in. HTML is a good intermediary format that is understood by most word processors, editors, and content management systems. If you use Microsoft Word or LibreOffice, their native formats might be a better choice. The Rich Text Format (RTF) is also supported by most word processor applications.
There are some differences between CTXT and other Markdown-based formats like CommonMark:
- CTXT files are always saved using UNIX-style /n line endings, even on Windows.
- A line break is a line break in CTXT. In CommonMark and most other Markdown dialects, single line breaks are treated as a soft break (i.e., a space) unless they are preceded by two spaces.
Generally, Commit is meant for plain text. But if you really can’t live with that, you can use CommonMark (Markdown) formatting. When you export from Commit to other formats, your document will be passed through Pandoc’s CommonMark parser and any syntax you have used will be retained.
- Text you wrap in *asterisks* or _underscores_ will be translated into italics.
- Text you wrap in **double asterisks** or __double underscores__ will be translated into bold.
You can also use the link syntax, list syntax, and a lot of other stuff. Take a look at the CommonMark and Markdown documentation if you want this kind of control. But you really ought to be focused on writing, not formatting.
The main area where CTXT format differs from CommonMark is where it comes to line breaks. A single line break (which you can do with shift+enter) is a line break. A normal break (enter) is a paragraph break. We do not treat single line breaks as a soft break (space).