Quinta 30 Junho 2016

## Tinn-R

Contents[Hide]

#### 2. Description

The Tinn-R is an editor/word processor ASCII/UNICODE generic for the Windows operating system, very well integrated into the R, with characteristics of Graphical User Interface (GUI) and Integrated Development Environment (IDE).

It is a project registered under the General Public License GPL, that is, an open source software.

#### 3. Purpose

The purpose of Tinn-R project is to facilitate the learning and use of all the potentiality of R environment for statistical computing.

For novice users use will greatly accelerate the learning of R.

For experienced users, provides advanced editing features (R, Noweb, LaTeX, Txt2tags), processing, format conversion (Noweb, LaTeX, Txt2tags, Pandoc) and compiling LaTeX documents, among other formats. The productivity of all the work involving text files (scripts, documentation, etc) can be considerably increased with the efficient use of Tinn-R resources.

In a nutshell, a tool case for editing and word processing: easy to use for a novice and a very flexible and versatile for experienced/advanced users. Some R users may prefer other editors/GUIs which are more powerful and with more features such as: Vim + Vim-R-plugin and Emacs + ESS, the two most widely used. However for both, learning is much more difficult.

#### 4. Key features

• R
• Recognizes Rgui.exe and Rterm.exe
• Supports RNOWEB (Knitr and Sweave)
• Object explorer (graphical user interface - GUI for R with selection options and filter)
• Several optionsfor sending instructions (file, selection, blocks, lines) and control of the R interpreter
• Edit
• Advanced colouring of several languages' syntax
• Supports macros
• Completion (based on XML database, customizable and expandable)
• Processing
• Basic support to LaTeX
• Format conversion (Pandoc, Txt2tags e Deplate)
• Spell checkingfor multiple languages
• Search and substitutionon files and folders
• Content Management
• Interface for project management

#### 5. A little history

The project began in mid/2003, six months after the current project coordinator (CPC) start working with the environment R. In August/2003 he had decided to adopt R as the main tool in the teaching of statistics (his main activity) and also statistical data analysis (second main activity).

The initial objectives of the project with respect to R were three:

• Developing an Editor/GUI simple and flexible under the Windows operational system
• Facilitate the workof the CPC regarding data analysis using R

After the CPC have tested almost all GUIs then available:

as well as other popular editors offering resources to interact with R:

he realized that he did not adapt well to neither the GUIs nor the editors tested. Furthermore, he worried about the difficulties related to teaching (installation, configuration and usage) in the laboratories of statistical computing.

Among these, the Emacs + ESS was the best known, recommended and used by experienced users, however, with difficult configuration and usage for the novice user (main public teaching on the R statistical computing) or casual. Additionally, the interface was not pleasant to users accustomed to the rich Windows graphical interfaces. Moreover, some projects were still fledgling, while others had problems of continuity.

The CPC imagined that an editor could be customized by adding features that the GUI needs. Since he had already been an old programmer in Object Pascal, it would be interesting to start from an open source editor written in this language, and adapt it to his needs.

After searching the internet and preliminary tests, six editors developed under the Delphi IDE then Borland (now Embarcadero) were selected.

The second stage consisted of testing performance and stability. Finally, two projects were selected:

• Tinn, in English, discontinued in 2005
• Notes, in Portuguese, also discontinued in 2005

Both had the basic features needed. Among them, the Tinn (Tinn Is Not Notepad) showed greater structural simplicity, better performance and greater stability, which led to his final selection.

Although the basic features of a generic and simple editor had already been implemented by the developers, there was still much to be done in relation to the editor and future GUI. The small group of Tinn developers was reported (although this is not a requirement of the software under the General Public License - GPL) of the CPC´s intention to have new features implemented. They worked together in the source code of the editor Tinn for about five to six months until realizing, given the new requirements, that would not be possible to keep it generic, according to the original design of the project Tinn. Then, in November/2003 a new project started: Tinn-R.

In December/2003 the basic features allowing communication with the R environment had already been implemented and the program used by the CPC for his analyzes. It would also be used in the classroom of a statistics graduate studies at the UESC/PPGPV (still in preparation, and scheduled for March/2004).

In January/2004 a copy of the software was forwarded to the coordinator for GUI projects of CRAN (The Comprehensive R Archive Network), Dr. Philippe Grosjean. The project received high praise and a number of suggestions, most were (largely) implemented in the short term. Others, due to complexity, took the long term.

At a later stage, Tinn-R was made available to R users in SciViews-R home page, maintained by Philippe. The project name (Tinn-R) was one of the suggestions made by Philippe. The version 0.0.8.8 R1.04 (Jan/2004) was the first one to be released. The authors were then José Cláudio Faria and Mark de Groot. Mark was one of the remaining members of the original Tinn team project, Philippe was then collaborator. This was the first published version of the project.

Subsequently, given the effective collaboration in defining the characteristics of the project, and the development of the R functions that allow better integration between the two programs (Tinn-R and R), Philippe was invited to be co-author of the project. Mark de Groot, an excellent programmer in Object Pascal, since having no affinities with statistics, began to move away from the project, becoming a sporadic contributor and since 2006 no longer contributed to the project.

Registered under the General Public License GPL, the project gained many supporters and countless suggestions began to be sent by new users. The project's success is attributed to the experience of Philippe in GUI development for R, to his suggestions (always requesting more resources than the CPC was willing to implement), as well as the users' (the same), which effectively determined the direction of its development.

The project began to be used as editor of Editor/GUI, simple, yet efficient, in educational and research institutions related to statistics and R. Over the years we sought, within the time available for this activity, answer, in the best possible way, the demand and feedback from users, which may be your great advantage: a program designed by users for users.

In late 2006, Enio G. Jelihovschi joined the project, becoming responsible for its documentation.

In 2008, the post-doctoral of CPC (ESALQ/USP, under the supervision of the prof. Clarice G. B. Demétrio) with a scholarship from CNPq had the title: TINN-R - GUI/EDITOR FOR R OPEN SOURCE ENVIRONMENT FOR STATISTICAL COMPUTING, had two main objectives:

• Improvement and consolidation of program under the Windows operational system
• Use, independent of the operational system (multiplatform)

The first objective was met in full. As for the second, studies of the main alternatives (using the multiplatform Lazarus and migration to the platform .Net under MONO) were developed. After contacting teams of developers of those tools and environments, and also preliminary testing, we finally reach the conclusion that, in both cases, it would be an overwhelming task and the final results unreliable.

The Embarcadero, after the acquisition of the compilers from Borland, has made serious efforts to enable the compilation of code in Object Pascal/Delphi available in other platforms, beyond Windows. Thus, it is envisaged in the medium and long term, the possibility of porting the Tinn-R project for Linux and Mac.

#### 6. Authors

• José Cláudio Faria - Brazil/UESC/DCET (Coordinator, development and programming in Object Pascal)
• Philippe Grosjean - Belgium/UMH/EcoNum (R programming, experience in developing GUIs for R, excellent ideas and suggestions, guidance and project documentation in the English language). In fact, much of the project's success is due to good suggestions - over the years - from Phil: Thank you! (Some were very difficult to implement.)
• Enio Galinkin Jelihovschi - Brazil/UESC/DCET (Documentation in English language)
• Philipe Silva Farias - Brazil/UESC (Development)

#### 8. User list (discussion group)

• You can report bug, ask questions, make suggestions and discuss ideas about the Tinn-R Editor such as how to accomplish a specific task, how to change the behavior, and why a specific feature is missing.
• SourceForge (old)

#### 9. What is new?

##### 9.1. 4.2.2.0 PRE-RELEASE (jun/29/2016)
• Bug(s) fixed:

• A bug related to Rterm interface (IO) and the package debug was fixed. Thanks to Ivan B. Allaman for pointing it out.

• It was corrected some annoying things about then completion followed by F3 to find the next occurrence of |.

• It was corrected some annoying things about then installation of TinnRcom package (and its dependences).

• We have been released various PRE-RELEASE versions of the project not restrict to testers: thanks for tests and suggestions.

• The installation of TinnRcom package (and its dependences) was improved. From now, the sources (.tar.gz) and the binaries (.zip) of the packages formatR, svMisc, svSocket and TinnRcom will be released joined with the setup of Tinn-R. After the installation it will be placed at folder packages. So all will be installed from the local .zip.

• The menu options has a new option: R echo (on/off). It enables the user to choice if want (or not) echo some options of send: file, selection, clipboard, block marked, contiguous lines a line to end of page. A associated button was add to R task bar. We think it made more simple and user friendly these options. The default shortcut to toggle this option is ALT + E

• The procedure to open a remote file from an URL was improved and now cover also https protocol.

• If the user choice in Options/Application/R/Patch (R) is No to Use latest installed version (always) option, in the startup, Tinn-R will search in all letters of the system drives for the fully informed path of R. It is very useful in the portable flavors due to letters changes in different computers.

• The visibility of all Page Control and Tab Sheets caption were improved.

• R will be always started with two options:

• options(pkgType=’binary’)

• options(install.packages.check.source=’no’)

• If the user do not have a personal library to manage the packages, from this version Tinn-R will create a folder named x.y, related to major and minor R version in the C:/Users/User/Documents/R/win-library/. This library will be used as default to package manager. The user can change the default library at Options/Application/R/Packages (R) in the Library trees (.libPaths().

• The default files Shortcuts.xml and Mirrors.xml were updated.

• All files on the folder utils were updated.

• The default shortcuts related to focus of Rterm interface (Editor, IO and LOG) were changed due conflict with Windows 10.

• Under Rterm except Send File all other options related with more than one line will be added do the R history.

• The source code related to identification of library trees .libPaths() was improved.

• The R explorer interface related to identification of environments from objects was improved.

• The resources related to update mirrors in runtime were improved.

• The resources related to knitr and Sweave were improved and new options are in Options/Application/R/Packages/Knitr.

• To all knit procedures it will be added the argument quiet=TRUE. So, if you want more control, or to big documents, we suggest (for while) to use the knit with Rgui.exe intead of Rterm.exe.

• The menu Insert has a new option: R (assignment). This option make flexible to insert <- and -> assignment. As it is associated to shortcuts, the user can customize both.

• The navigator of all database was replaced.

• The IO prompt of the Rterm interface is more user friendly. For this set Options/Application/Editor/Advanced/Scrool pas end of line option.

• It was add a new item in the main menu: Tools/Processing/Viewer/Open current file (generic).

• The windows Options/Application received improvements.

• It was added a new resource allowing the user to open/learning/edit the example script of any R objet, from the editor, Rterm/IO, Rterm/LOG or window Tools/R/explorer.

• The tip and data completion were deeply improved. CTRL + SPACE is the single trigger for both and the distinction is made in the context of the call. Additionally this feature now find the object, the package and the pattern in complex contexts multiline.

• The usability of Rterm interface is now more robust, stable and user friendly.

##### 9.2. 4.0.3.4 (jun/11/2015)
• Bug(s) fixed:

• A bug related to Rterm interface (IO and Log) and the packages car and rms was fixed. The origin of the bug is that when both packages are loaded they change the pattern of messages on the pipe. Thanks to Frank for pointing it out.

• A bug related to Update R mirrors and the countries Germany, Spain and Sweden was fixed.

• The versions 4.0.3.1, 4.0.3.2 and 4.0.3.3 were restrict to testers: thanks for tests and suggestions.

• From this version Tinn-R will be released in three flavours: Tinn-R, Tinn-RPortable and compatible with PortableApps platform.

• Some files of the folder utils were updated to meet with Tinn-RPortable project necessities. Therefore, the folders and files of the R variable .trPaths were changed to TEMP environment variable.

• The Help menu was a little changed.

• The TinnRcom package was updated to the version 1.0.18.

##### 9.3. 4.0.2.1 (Apr/29/2015)
• Bug(s) fixed:

• A bug related to the recent version released (R 3.2.0) and the instalation of the necessary TinnRcom package was fixed. Thanks to Duncan Murdoch for the suport.

• The file Rinstall.R located at the folder utils where Tinn-R was instaled was updated to supress the download of two no more necessary packages (Hmisc and R2Html) to TinnRcom package.

• The TinnRcom package was updated to the version 1.0.17.

##### 9.4. 4.0.2.0 (Apr/22/2015)
• Bug(s) fixed:

• A bug related to Sumatra (PDF viewer) and User guide (PDF), location of topics, has been fixed. If you have it installed, please upgrade to 3.1.1 or higher.

• Drag and drop from R explorer to Editor.

• Rterm is now entirely updated after any changes in Options/Application or Options/Highlighters (settings).

• A bug related to line wrap has been fixed: thanks to Frank for pointing it out.

• A bug related to character recognition of Tools/Database/R/Mirrors has been fixed.

• A bug related to Rterm/Log text highlighter has been fixed.

• A bug related to Page control files and hints of files has been fixed.

• Some bugs were fixed and it is more user friendly when the editor is in split mode.

• Some bug were fixed related to Hide/Show resources os Tools panel

• Pre-release versions 4.0.0.0 to 4.0.1.5 were restrict to testers: thanks for tests and sugestions.

• Philipe Silva Farias has began to work in the project as co-author.

• Tinn-R Editor - GUI for R Language and Environment is a project under GPL and distributed as freeware. Since creating and maintaining the project involve many costs, donations are welcome!

• An experimental Hex viewer was added to Tools/Results/Hex viewer. There is a bug related to UTF-8 BOM encoding file: the selection of (Char $\rightleftharpoons$ Hex), only in the first line, is not correctly associating the character with its corresponding Hex. It has its own pop-up menu with many (and useful) options.

• An experimental file notification resource has been added to the project. The options are at Options/Application/General.

• Prior backup (full or database) will not be compatible anymore from this version.

• A set of new icons was created specially to the project: thanks to Philipe S. Farias for the hard work.

• The visual identity of the project has been changed: thanks to Carolina S. Faria for the work.

• New resources to autocompletion have been added. If there is a selection, the new feature will respect that.

• A new option was added to Options/Application/R/Rterm/Options (Rterm) enabling the user to choose if setwidth will be sent automatically when the panel width or font size is changed.

• Some improvements were made in the Options/Application and this interface has new options now.

• The usability of Rterm interface has been improved.

• The URI highlighter has now a new identifier named Space.

• The default shortcut to alternate the focus among Editor, IO and Log has been changed.

• The automatic recognition of hardware architecture (32 or 64 bit) was improved.

• The project Jedi used in the Tinn-R project was updated to the latest version. It correct some bugs related to Tools and Rterm panels and Auto Hide option.

• A new option was added: Project/Open demo. The objective is to show to novice user what is a project and it utility.

• The list of recognized words of R highlighter family related to plotting has been updated. Thanks to Berry Boessenkool for pointing it out.

• The order of the objects was changed in Tools/R/Explorer. We think it has now a more natural order and hierarchy.

• The available fonts family were restricted to True Type and FixedPitchOnly.

• The main menu Options has three new options:

• Auto completion CTRL + ALT + C

• Enable Notication CTRL + ALT + N

• Update silently CTRL + ALT + U

• It is now possible to open any URL from the Windows Opend Dialog: File/Open.

• Source code:

#### 12. eBook

• Updated version (eISBN: 978-85-7455-342-9):
• Outdated version:

#### 14. Feedback from users

I am a very happy and satisfied user of Tinn-R. (Raphael Seitz - Technical University Berlin - Germany - Author of the nice picture above)

I work with R since years and tried many editors. Many of them has good features as well, even ones that are not in TinnR up til now (code folding) but this one is the best of all, very handy, easy to use even for beginners, usable from USB just with 2 corrections in preferences. Excelent work. Many thanks to José Cláudio Faria and Philippe Grosjean. (Udo Junghans)

Tinn-R has greatly simplified and accelerated my development of R script since I began using it about one year ago. Tinn-R is an impressive open source tool. Calling it, a GUI code editor is a bit of an understatement. In several ways, when used in conjunction with R, you have a highly capable environment that begins to approach the features and functionality of an Integrated Development Environment (IDE). Also impressive is the level of commitment and support this tool receives. (Dan Hunt)

An exceptionally powerful tool for leveraging R's strength's. It is clear from use over the last year that the development team is serious and capable - that makes this a robust addition to one's toolkit. (Boramark)

Excellent useful program. Works excellently with R - much better for me that using the native windows Rgui. Allow you have multiple script files open simultaneously. Code is nicely formatted. (Tom)

A brilliant way of making analysis using R pleasurable. Fast response and excellent integration. (Brian K. Boonstra)

For me this is essential if you're going to use the free program R software. (JJ)

Very good project, thanks a ton for giving out. (Elijah Snider)

Very very good. Using for a long time. (Mervyn Sousa)

AWESOME software and free... EXCELLENT. (Jerald Petersen)

Thanks a lot everywhere! (Roderick Crockett)

Works great. Thanks to the developers of this app. (Anna)

This works great. Thanks guys! (Lydia Harpe)

Fast and simple. (Max Shawn)

I like this editor so much :) (Clay Greenham)

Great tool. Like it. (Derek Finn)

The best program that I've ever used. (Adolphus Keefe)