Under the hood, ecto offers a variety of extra features that may not be readily evident. Here's a list (most likely incomplete).
- Customization of HTML tags: From the Window menu, choose "HTML Tags". This will open a window in which you can modify, add, and/or delete HTML tags. Additionaly, you can assign keyboard shortcuts to your favorite tags. To assign a keyboard shortcut, click on an entry in the "Shortcut" column to reveal the shortcut editor. Please keep in mind not to choose shortcuts that conflict with shortcuts that are already used by ecto or the MacOSX system.
- Show the song currently playing in iTunes: If you are listening to iTunes, you can insert details of the currently playing song into an entry by selecting Edit > "Insert iTunes". The format of the song info display is customizable via the Weblog > "Edit Templates...".
- Control-clicking: In some windows, control-clicking can reveal additional options:
- Preview window: Opening links in default browser.
- Entries and Drafts list: Toggle visibility of columns; export entries to files; viewing published entries in the default browser.
- The blogs list of the Entries and Drafts list as well as the Options view of the Draft window: Changes the background color. If you control-click in the divider widget, you can choose the position of the view to either right or left.
- Debug console: Selecting "Console" from the Window menu will reveal an extra window that shows the details of all communications with your weblog servers. If you run into a problem with ecto, the debug console can provide helpful information. When contacting ecto support with problems, always make sure to have debug console output available as well.
- Blog switching: If you have an entry published on a blog and you want to publish to another blog, do this:
- Open the entry from the Entries and Drafts list.
- From the entry window's blog popup menu, select the blog you want to publish the entry to.
- Adjust settings and content, if necessary.
- Click "Publish" in the toolbar.
- Per-blog settings: Almost all settings, apart from the general preferences, are saved on a per-blog basis. This means that you can have different settings for each of your blogs. The Draft window's Options drawer contains the button "Save as Default" with which you can tell ecto to store the current draft settings as default for all new drafts.
- Services: ecto adds two new services to the Services menu both of which insert selected text into either a new or the current draft. If the selected text originates from Safari, ecto applies the Blog This template and also inserts the URL and the page title.
- .webloc: You can drop .webloc files (URL address links generated by MacOSX) on the ecto icon or main window and the web address will be inserted in the text.
- drag and drop: ecto has extensive support for drag and drop.
- wrap the clipboard contents in your HTML tag: The default HTML tag for links is <a href="%@">. The '%@' character tells ecto to insert the contents of the clipboard. This is useful if you just copied a link to clipboard and want to insert it quickly in your entry.
You can also use the '%*'. Normally, a custom tag is applied to selected text by prepending the starting tag and appending the ending tag. However, sometimes you may want to use the selected text twice. For example, if your starting tag is <a rel="nofollow" href="http://technorati.com/tag/%*" rel="tag">, then applying this custom tag to a selected word, such as "ecto", will produce <a rel="nofollow" href="http://technorati.com/tag/ecto" rel="tag">ecto</a>.
- Scripting: ecto is not only fully AppleScript-able, it also allows you to use scripts written in Bash, Perl, PHP, Python, and Ruby. ecto looks for scripts inside ~/Library/Application Support/ecto/scripts/ and loads them in its Scripts menu. Choose one of them from the menu and they will be called to work on your current draft. AppleScript scripts should use ecto's scripting dictionary to obtain an entry's (selected) text and whatever other information it needs. The other scripts are called with a parameter that points to a UTF8 encoded text file containing either the selected text or the entire contents of the front most draft's edit area. Any changes the script makes must be written back to the same file (UTF8 encoded). These scripts can also use STDOUT to channel HTML-formatted messages to ecto, which will then be displayed in an HTML window (see the validator for an example).