<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<meta name="copyright" content="Copyright (c) Eclipse contributors and others 2018, 2021."/>
<meta http-equiv="Content-Language" content="en-us"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<link rel="stylesheet" href="noteworthy.css" type="text/css"/>
<title>StatET 4.4 - New and Noteworthy</title>

</head>
<body>

<h1>StatET 4.4 - New and Noteworthy</h1>
<ul>
	<li><a href="#r_editor">R Editor</a></li>
	<li><a href="#r_project">R Project</a></li>
	<li><a href="#r_console">R Console</a></li>
	<li><a href="#r_data_editor">R Data Viewer</a></li>
	<li><a href="#rj">RJ / RServi Development Library</a></li>
</ul>
<p>For other information about the release see the <a href="https://projects.eclipse.org/projects/science.statet/releases/4.4.0">release page</a> for StatET 4.4.0.</p>

<table class="news">
<colgroup>
	<col class="title" />
	<col />
</colgroup>
<tbody>
	
	<tr>
		<td id="r_editor" class="section" colspan="2">
			<h2>R Editor</h2>
		</td>
	</tr>
	<tr id="r_editor-forward_pipe">
		<td class="title"><a>Forward Pipe Operator</a></td>
		<td class="content">
			A forward pipe operator was added to the R language 4.1 and is supported by the
			<b>R parsers and tools</b> in StatET now. Above all it appears in the code syntax
			highlighting and validation in the R editor and console:
			<p><img src="images-4.4/r_editor-forward_pipe.png"/></p>
			<p>A new editor template for the pipe operator allows to insert it by a keyboard shortcut,
			the default binding is <kbd>Ctrl</kbd>+<kbd>5</kbd>.</p>
		</td>
	</tr>
	<tr id="r_editor-shorthand_fdef">
		<td class="title"><a>Shorthand Notation for Function Definitions</a></td>
		<td class="content">
			The R language 4.1 also provides a new shorthand notation for function definition
			using a backslash. The <b>R parsers and tools</b> in StatET support the new syntax too:
			<p><img src="images-4.4/r_editor-shorthand_fdef.png"/></p>
		</td>
	</tr>
	<tr id="r_editor-quick_assist-forward_pipe">
		<td class="title"><a>Quick Assist - Convert to Forward Pipe</a></td>
		<td class="content">
			A new quick assist quickly converts a classic function call to the new forward
			pipe operator.
			<p><img src="images-4.4/r_editor-quick_assist-forward_pipe.png"/></p>
		</td>
	</tr>
	<tr id="r_editor-quick_assist-key">
		<td class="title"><a>Key Bindings for Quick Assists</a></td>
		<td class="content">
			The new commands for the quick assists Rename in File and Convert to Forward Pipe (see
			above) allows direct access to these actions by customizable keyboard shortcuts too.
			<p><img src="images-4.4/r_editor-quick_assist-key_binding.png"/></p>
		</td>
	</tr>
	<tr id="r_editor-repl_function">
		<td class="title"><a>Support for Replacement Function</a></td>
		<td class="content">
			The support for replacement functions has been improved, so that all occurrences are
			correctly linked together now. Also the quick assists to rename the occurrences in the
			file or code chunk take into account the special naming rules:
			<p><img src="images-4.4/r_editor-repl_function.png"/></p>
		</td>
	</tr>
	
	<tr>
		<td id="r_project" class="section" colspan="2">
			<h2>R Project</h2>
		</td>
	</tr>
	<tr id="r_project-r_language_version">
		<td class="title"><a>R Language Version</a></td>
		<td class="content">
			If an R project should be compatible with older versions of R, it is possible configure
			the R language version in the <b>project settings</b>, so that the new language features
			introduced in 4.1 are disabled and marked as error.
			<p><img src="images-4.4/r_project-r_language_version.png"/></p>
		</td>
	</tr>
	
	<tr>
		<td id="r_console" class="section" colspan="2">
			<h2>R Console</h2>
		</td>
	</tr>
	<tr id="r_console-find_next_previous">
		<td class="title"><a>Find Next / Find Previous</a></td>
		<td class="content">
			The R Console in StatET 4.4 supports the commands Find Next and Find Previous.
			<p>Select the text to find and press <kbd>Ctrl</kbd>+<kbd>K</kbd> or
			<kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>K</kbd> respectively to jump to the next
			occurrence.</p>
		</td>
	</tr>
	
	<tr>
		<td id="r_data_editor" class="section" colspan="2">
			<h2>R Data Viewer</h2>
		</td>
	</tr>
	<tr id="r_data_editor-dimension">
		<td class="title"><a>Dimension</a></td>
		<td class="content">
			The status bar of the R Data Viewer shows the dimension of the unfiltered data in
			addition to the dimension of the filtered data.
			<p><img src="images-4.4/r_data_editor-dimension.png"/></p>
		</td>
	</tr>
	
	<tr>
		<td id="rj" class="section" colspan="2">
			<h2>RJ / RServi Development Library</h2>
		</td>
	</tr>
	<tr id="rj-rservi_changes">
		<td class="title"><a>Changes</a></td>
		<td class="content">
			For new and noteworthy items of the RJ/RServi development library see its
			<a href="https://git.eclipse.org/c/statet/org.eclipse.statet-rj.git/tree/CHANGES.md?h=releases/4.4.1.202108191400-r">CHANGES</a>
			file.
		</td>
	</tr>
	
</tbody>
</table>

<div class="add-navi">
<p><a href="noteworthy-4.3.php" title="StatET 4.3 - New and Noteworthy">&#x25B6;&ensp;New and Noteworthy for previous release</a></p>
</div>

</body>
</html>
