Giving Undo Attention

Total Page:16

File Type:pdf, Size:1020Kb

Giving Undo Attention Giving undo attention Gregory D Ab owd & Alan J Dix HCI Group, Dept. of Computer Science UniversityofYork Heslington, YORK YO1 5DD UK Abstract In this pap er, weinvestigate the problems asso ciated with the provision of an undo supp ort facility in the context of a synchronous shared or group editor. Previous work on the development of formal mo dels of undo has b een restricted to single user systems and has fo cused on the functionality of undo, as opp osed to discussing the supp ort that users require from any error recovery facility. Motivated by new issues that arise in the context of computer supp orted co op erativework, weaimtointegrate formal mo delling of undo with an analysis of how users understand undo facilities. Together, these combined p ersp ectives of the system and user lead to concrete design advice for implementing an undo facility. The sp ecial issues that arise in the context of shared undo also shed light on the emphasis that should b e placed on even single user undo. In particular, we come to regard undo not as a system command to b e implemented, but as a user intention to b e supported by the system. Keywords: Undo support, CSCW, formal methods 1 Intro duction In this pap er we discuss the issue of design options for undo in a group editor, b oth in terms of what is wanted by the users and what is meaningful and p ossible for the system to provide. We explore the extenttowhich the system supp orts the users' intention for undo within the wider context of recovery. The imp ortance and problem of undo Few p eople would argue ab out the imp ortance of undo. As Yang [29 ] p oints out: Gregory Ab owd is a Research Asso ciate with the HCI Group and Dep endable Computing Systems Centre at York. Alan Dix is funded byaSERCAdvanced ResearchFellowship B/89/ITA/220 with the HCI Group at York. 1 2 Gregory D Ab owd & Alan J Dix \Most sophisticated interface systems should b e provided with an undo supp ort facility." Similar quotes can b e found in the literature dating back at least 10 years; indeed, Shnei- derman [24] regards the ability to easily and incrementally undo one's actions as a char- acteristic of direct manipulation systems whichmakes them so app ealing. Despite the general agreement of the imp ortance of undo, few systems supply more than the simplest single-step undo command and, even then, the e ect of command and when it can b e ap- plied is often far from obvious. In a recent study of the use of Microsoft Word [27], it was found that even exp ert users were unable to b oth predict the e ect of the undo command or recognise its b ehaviour. Undo supp ort for single user systems is regarded as essential, but recognised to b e fraught with p otential pitfalls. Users who have come to exp ect e ective undo supp ort in their single user applications will carry forward this exp ectation to their groupware. Extending single user notions of undo into a multi-user context raises many new issues and even calls for a re-examination of the understanding of conventional single-user undo. However, the authors have only found one brief reference to this issue in the CSCW literature [22]. We therefore b elieve that multi-party undo is an area which is urgently due attention. Undo|a system function? Most analyses of undo consider it as a function, that is, the system undo es the user's last action in resp onse to the undo command invoked bya keyb oard button press or a menu selection. From a computing p ersp ective, the system function invoked by the user's command can b e extended to lo ok at rep eated undo or redoing previously undone commands. There are also questions ab out how to eciently implement undo|whichis why most systems supply undo in such a restricted form. Even psychologists, who takea more user-centred approach to undo analysis, still remain con ned to the idea of undo as a system function. Examples of suchpsychological analysis are the ab ove-mentioned study of undo in Microsoft Word [27] and the knowledge analysis of Young and Whittington [30]. which has also b een applied to the question of multi-user undo [21]. Our analysis will take this dominant theme of undo as a system function as far as it will meaningfully go in the multi-user case. Even though we are able to suggest principles for the supp ort of the multi-user undo function, the issues of group undo necessarily lead us to rethink this stance. Rather than ask, \What do es the undo button do?", we instead ask \What is the undo button for?" The former question leads to an analysis of undo as a system function, but the latter to an interpretation of undo as a user intention. Th user wants to recover from a recognised erroneous state and mayachievethisintention by use of any system function, not necessarily the undo function. This p ersp ective suggests that designers must fo cus on supplying to ols to facilitate this recovery. Overview In Section 2, we will describ e a scenario for the design of a multi-user undo for a shared text editor, summarize the results of a knowledge analysis of undo, de ne the scop e of the Giving undo attention 3 problem we are considering and the particular formal approachwe adopt in our analysis. Our analysis in Sections 3{5 will push the `undo as a function' p ersp ective as far as p ossible. Section 3 will lo ok at existing mo dels of single user undo and how they extend to the multi-user case. It is here that the con ict arises b etween the user preference for lo cal undo and the system preference for global undo. A more formal discussion in Section 4 will characterise conditions under which the con icting system and user preferences for undo can b e reconciled. Section 5 will then discuss more concrete mechanisms which a designer can use to satisfy lo cal user undo with a global system undo. Unfortunately, the ma jority of these mechanisms work only b e decreasing the p ossibilityofinterference b etween users, whichinthecontext of the shared editor means reducing the p ossibility for co op eration. Though we do present some more ne-grained mechanisms in Section 5 for resolving con ict whilst maintaining co op eration, there still remain situations in which the system cannot provide a sensible interpretation for lo cal undo. The only p erson who knows what to do is the user. Given this, Section 6 takes a lo ok at the more general issue of recovery, in which undo is but one form. We conclude that recovery is more prop erly understo o d as a user intent and not a system function, and we discuss mechanisms which can b e used to supp ort that intention. Section 7 summarizes the recommendations for undo in a group editor, b oth as a function and as user supp ort. 2 The problem Scenario A team of designers are developing a group text editor intended for co op erative do cument preparation. Early versions of the editor allow for only one insertion p ointinto the shared do cument, so that simultaneous editing requires the users to \pass" control of the insertion p ointbetween them. It is p ossible that future versions of the system will allowmultiple insertion p oints so that truly concurrent and synchronous editing can o ccur. The designers feel it is imp ortanttoprovide supp ort for undoing, so that the users could reverse the e ects of the most recent editing op erations if they pro duced undesirable e ects on the shared do cument. They are not sure, however, how that undo facilityshouldwork. Some feel it should work relative to the do cument, that is, allowing one user to undo the most recent op eration regardless of whether they were the initiators of that op eration. The others b elieve that a single user should only b e able to undo op erations that they themselves initiated. None of the designers can app eal to anything other than intuition as to which is the b est solution, and in this case there is no consensus. The designers recognise that an undo facilityisnot something that can b e develop ed as an add-on comp onent to an existing system but rather requires consideration from the very early stages of design. Therefore, developing systems which manifest the two undo schemes implies the parallel developmentoftwo systems, and there are not the resources for such a luxury. In short, they are unable to give undo attention. 4 Gregory D Ab owd & Alan J Dix The user's p ersp ective A reasonable requirement for the construction of an undo supp ort facility is an under- standing of what a user must know ab out undo in order to make e ective use of it. A know ledge analysis of undo byYoung and Whittington [30, 21] highlights four questions the user must b e able to answer ab out undo: 1. What stream of activity is relevant? For a single user system, this is normally the user's stream of actions. For multi-user systems wemust also consider whether the stream is the user's own actions or the intermingled stream of all the users' actions.
Recommended publications
  • Boot Mode Considerations: BIOS Vs UEFI
    Boot Mode Considerations: BIOS vs. UEFI An overview of differences between UEFI Boot Mode and traditional BIOS Boot Mode Dell Engineering June 2018 Revisions Date Description October 2017 Initial release June 2018 Added DHCP Server PXE configuration details. The information in this publication is provided “as is.” Dell Inc. makes no representations or warranties of any kind with respect to the information in this publication, and specifically disclaims implied warranties of merchantability or fitness for a particular purpose. Use, copying, and distribution of any software described in this publication requires an applicable software license. Copyright © 2017 Dell Inc. or its subsidiaries. All Rights Reserved. Dell, EMC, and other trademarks are trademarks of Dell Inc. or its subsidiaries. Other trademarks may be the property of their respective owners. Published in the USA [1/15/2020] [Deployment and Configuration Guide] [Document ID] Dell believes the information in this document is accurate as of its publication date. The information is subject to change without notice. 2 : BIOS vs. UEFI | Doc ID 20444677 | June 2018 Table of contents Revisions............................................................................................................................................................................. 2 Executive Summary ............................................................................................................................................................ 4 1 Introduction ..................................................................................................................................................................
    [Show full text]
  • Fuzzy Mouse Cursor Control System for Computer Users with Spinal Cord Injuries
    Georgia State University ScholarWorks @ Georgia State University Computer Science Theses Department of Computer Science 8-8-2006 Fuzzy Mouse Cursor Control System for Computer Users with Spinal Cord Injuries Tihomir Surdilovic Follow this and additional works at: https://scholarworks.gsu.edu/cs_theses Part of the Computer Sciences Commons Recommended Citation Surdilovic, Tihomir, "Fuzzy Mouse Cursor Control System for Computer Users with Spinal Cord Injuries." Thesis, Georgia State University, 2006. https://scholarworks.gsu.edu/cs_theses/49 This Thesis is brought to you for free and open access by the Department of Computer Science at ScholarWorks @ Georgia State University. It has been accepted for inclusion in Computer Science Theses by an authorized administrator of ScholarWorks @ Georgia State University. For more information, please contact [email protected]. i Fuzzy Mouse Cursor Control System For Computer Users with Spinal Cord Injuries A Thesis Presented in Partial Fulfillment of Requirements for the Degree of Master of Science in the College of Arts and Sciences Georgia State University 2005 by Tihomir Surdilovic Committee: ____________________________________ Dr. Yan-Qing Zhang, Chair ____________________________________ Dr. Rajshekhar Sunderraman, Member ____________________________________ Dr. Michael Weeks, Member ____________________________________ Dr. Yi Pan, Department Chair Date July 21st 2005 ii Abstract People with severe motor-impairments due to Spinal Cord Injury (SCI) or Spinal Cord Dysfunction (SCD), often experience difficulty with accurate and efficient control of pointing devices (Keates et al., 02). Usually this leads to their limited integration to society as well as limited unassisted control over the environment. The questions “How can someone with severe motor-impairments perform mouse pointer control as accurately and efficiently as an able-bodied person?” and “How can these interactions be advanced through use of Computational Intelligence (CI)?” are the driving forces behind the research described in this paper.
    [Show full text]
  • Text Editing in UNIX: an Introduction to Vi and Editing
    Text Editing in UNIX A short introduction to vi, pico, and gedit Copyright 20062009 Stewart Weiss About UNIX editors There are two types of text editors in UNIX: those that run in terminal windows, called text mode editors, and those that are graphical, with menus and mouse pointers. The latter require a windowing system, usually X Windows, to run. If you are remotely logged into UNIX, say through SSH, then you should use a text mode editor. It is possible to use a graphical editor, but it will be much slower to use. I will explain more about that later. 2 CSci 132 Practical UNIX with Perl Text mode editors The three text mode editors of choice in UNIX are vi, emacs, and pico (really nano, to be explained later.) vi is the original editor; it is very fast, easy to use, and available on virtually every UNIX system. The vi commands are the same as those of the sed filter as well as several other common UNIX tools. emacs is a very powerful editor, but it takes more effort to learn how to use it. pico is the easiest editor to learn, and the least powerful. pico was part of the Pine email client; nano is a clone of pico. 3 CSci 132 Practical UNIX with Perl What these slides contain These slides concentrate on vi because it is very fast and always available. Although the set of commands is very cryptic, by learning a small subset of the commands, you can edit text very quickly. What follows is an outline of the basic concepts that define vi.
    [Show full text]
  • LG Xpression Manual
    User Guide All screen shots in this guide are simulated. Actual displays and the color of the phone may vary. Some of the contents in this manual may differ from your phone depending on the software of the phone or your service provider. P/NO: MFL67476402 (1.0) www.lg.com LIMITED WARRANTY STATEMENT 1. WHAT THIS WARRANTY COVERS : 2. WHAT THIS WARRANTY DOES NOT LG offers you a limited warranty that the COVER : enclosed subscriber unit and its enclosed 1. Defects or damages resulting from use of the accessories will be free from defects in material product in other than its normal and customary and workmanship, according to the following manner. terms and conditions: 2. Defects or damages from abnormal use, 1. The limited warranty for the product extends abnormal conditions, improper storage, for TWELVE (12) MONTHS beginning on the exposure to moisture or dampness, date of purchase of the product with valid unauthorized modifications, unauthorized proof of purchase, or absent valid proof of connections, unauthorized repair, misuse, purchase, FIFTEEN (15) MONTHS from date neglect, abuse, accident, alteration, improper of manufacture as determined by the unit’s installation, or other acts which are not the manufacture date code. fault of LG, including damage caused by 2. The limited warranty extends only to the shipping, blown fuses, spills of food or liquid. original purchaser of the product and is not 3. Breakage or damage to antennas unless assignable or transferable to any subsequent caused directly by defects in material or purchaser/end user. workmanship. 3. This warranty is good only to the original 4.
    [Show full text]
  • Keyboard Shortcuts for Avid Editors
    Keyboard Shortcuts for Avid Editors (Media Composer, Newscutter, and Symphony) • Audio • Bin • Capturing • Editing • Effect Mode • Playing & Marking • Timeline • Trim Mode • Tools • Other Note: = Command Key Audio Windows Macintosh Description Alt + click Pan slider Option + click Pan slider Snaps to Mid in Audio Mix tool Snaps to 0 dB in Audio EQ and Audio Alt + click Volume slider Option + click Volume slider tools Alt + click Audio Track Option + click Audio Track Selects track for audio scrub Monitor button Monitor button monitoring Alt + click Track Solo button Option + click Track Solo (Automation Gain tool) button (Automation Gain tool) or or Mutes selected track (1 to 8) Alt + number (1 to 8) at top Option + number (1 to 8) at of keyboard top of keyboard Moves selected audio keyframe Alt + drag keyframe Option + drag keyframe horizontally in Timeline Alt + click digital scrub parameters in Composer Option + click digital scrub monitorOption + click digital parameters in Composer Opens Audio Settings dialog box scrub parameters in monitor Composer monitor Bin Windows Macintosh Description Ctrl + N Creates a new bin + N Selects all items in the active bin or the Project Window, Ctrl + A + A if selected Ctrl + W Closes open windows, bins or dialog boxes + W Prints the selected bin in whatever view you have Ctrl + P + P selected (Text, Frame or Script View) Ctrl + D Duplicates selected clip(s), sequence(s), or title(s) + D Creates a Group Clip from selected Master Clips or Sub Shift + Ctrl + G + Shift + G Clips First, select clips or sequences in the bin, then use this Ctrl + I shortcut to open the Console window, which will display + I useful information Hold down these shortcut keys, then click on the Clip Shift + Ctrl + click Shift + Ctrl + click Menu.
    [Show full text]
  • Startup Keyboard Shortcuts Press the Key Or Key Combination Until The
    Startup keyboard shortcuts Press the key or key combination until the expected function occurs/appears (for example, hold Option during startup until Startup Manager appears, or Shift until "Safe Boot" appears). Tip: If a startup function doesn't work and you use a third-party keyboard, connect an Apple keyboard and try again. Key or key combination What it does Option Display all bootable volumes (Startup Manager) Shift Perform Safe Boot (start up in Safe Mode) C Start from a bootable disc (DVD, CD) T Start in FireWire target disk mode N Start from NetBoot server X Force Mac OS X startup (if non-Mac OS X startup volumes are present) Command-V Start in Verbose Mode Command-S Start in Single User Mode To use a keyboard shortcut, or key combination, you press a modifier key with a character key. For example, pressing the Command key (the key with a symbol) and the "c" key at the same time copies whatever is currently selected (text, graphics, and so forth) into the Clipboard. This is also known as the Command-C key combination (or keyboard shortcut). A modifier key is a part of many key combinations. A modifier key alters the way other keystrokes or mouse clicks are interpreted by Mac OS X. Modifier keys include: Command, Control, Option, Shift, Caps Lock, and the fn key (if your keyboard has a fn key). Here are the modifier key symbols you can see in Mac OS X menus: (Command key) - On some Apple keyboards, this key also has an Apple logo ( ) (Control key) (Option key) - "Alt" may also appear on this key (Shift key) (Caps Lock) - Toggles Caps Lock on or off fn (Function key) Startup keyboard shortcuts Press the key or key combination until the expected function occurs/appears (for example, hold Option during startup until Startup Manager appears, or Shift until "Safe Boot" appears).
    [Show full text]
  • Understanding the CLI User Interface
    Understanding the CLI User Interface You can use two interfaces to monitor, configure, troubleshoot, and manage an EX-series switch: the J-Web graphical user interface and the JUNOS command-line interface (CLI). Both of these user interfaces are shipped with the switch. This topic describes the CLI. For information about the J-Web user interface, see [Unresolved xref]. CLI Overview JUNOS CLI is a Juniper Networks-specific command shell that runs on top of a UNIX-based operating system kernel. The CLI provides command help and command completion. The CLI also provides a variety of UNIX utilities, such as Emacs-style keyboard sequences that allow you to move around on a command line and scroll through recently executed commands, regular expression matching to locate and replace values and identifiers in a configuration, filter command output, or log file entries, store and archive router files on a UNIX-based file system, and exit from the CLI environment and create a UNIX C shell or Bourne shell to navigate the file system, manage switch processes, and so on. CLI Help and Command Completion To access CLI Help, type a question mark (?) at any level of the hierarchy. The system displays a list of the available commands or statements and a short description of each. To complete a command, statement, or option that you have partially typed, press the Tab key or the spacebar. If the partially typed letters uniquely identify a command, the complete command name appears. Otherwise, a beep indicates that you have entered an ambiguous command and the possible completions are displayed.
    [Show full text]
  • Information About Using the Command-Line Interface, Page 1 • How to Use the CLI to Configure Features, Page 5
    Using the Command-Line Interface This chapter contains the following topics: • Information About Using the Command-Line Interface, page 1 • How to Use the CLI to Configure Features, page 5 Information About Using the Command-Line Interface This section describes the Cisco IOS command-line interface (CLI) and how to use it to configure your switch. Command Modes The Cisco IOS user interface is divided into many different modes. The commands available to you depend on which mode you are currently in. Enter a question mark (?) at the system prompt to obtain a list of commands available for each command mode. You can start a CLI session through a console connection, through Telnet, a SSH, or by using the browser. When you start a session, you begin in user mode, often called user EXEC mode. Only a limited subset of the commands are available in user EXEC mode. For example, most of the user EXEC commands are one-time commands, such as show commands, which show the current configuration status, and clear commands, which clear counters or interfaces. The user EXEC commands are not saved when the switch reboots. To have access to all commands, you must enter privileged EXEC mode. Normally, you must enter a password to enter privileged EXEC mode. From this mode, you can enter any privileged EXEC command or enter global configuration mode. Using the configuration modes (global, interface, and line), you can make changes to the running configuration. If you save the configuration, these commands are stored and used when the switch reboots. To access the various configuration modes, you must start at global configuration mode.
    [Show full text]
  • Title Keyboard : All Special Keys : Enter, Del, Shift, Backspace ,Tab … Contributors Dhanya.P Std II Reviewers Submission Approval Date Date Ref No
    Title Keyboard : All special keys : Enter, Del, Shift, Backspace ,Tab ¼ Contributors Dhanya.P Std II Reviewers Submission Approval Date Date Ref No: This topic describes the special keys on the keyboard of a computer Brief Description and their functionalities . Goal To familiarize the special keys on the keyboard of a computer. Pre-requisites Familiarity with computer. Learning Concepts that special keys on a keyboard has special functionalities. Outcome One Period Duration http://www.ckls.org/~crippel/computerlab/tutorials/keyboard/ References http://computer.howstuffworks.com/ Page Nos: 2,3,4,5,6 Detailed Description Page No: 7 Lesson Plan Page No: 7 Worksheet Page No: 8 Evaluation Page No: 8 Other Notes Detailed Description A computer keyboard is a peripheral , partially modeled after the typewriter keyboard. Keyboards are designed for the input of text and characters. Special Keys Function Keys Cursor Control Keys Esc Key Control Key Shift Key Enter Key Tab Key Insert Key Delete Key ScrollLock Key NumLock Key CapsLock Key Pasue/Break Key PrtScr Key Function Keys F1 through F12 are the function keys. They have special purposes. The following are mainly the purpose of the function keys. But it may vary according to the software currently running. # F1 - Help # F2 - Renames selected file # F3 - Opens the file search box # F4 - Opens the address bar in Windows Explorer # F5 - Refreshes the screen in Windows Explorer # F6 - Navigates between different sections of a Windows Explorer window # F8 - Opens the start-up menu when booting Windows # F11 - Opens full screen mode in Explorer Function Keys F1 through F12 are the function keys.
    [Show full text]
  • Dell Latitude 14 Rugged Extreme – 7414 Getting Started Guide Guide De Mise En Route Handleiding Aan De Slag Getting Started Guide Handbuch Zum Einstieg
    Dell Latitude 14 Rugged Extreme – 7414 Getting Started Guide Guide de mise en route Handleiding Aan de slag Getting Started Guide Handbuch zum Einstieg Regulatory Model: P45G Regulatory Type: P45G002 Dell Latitude 14 Rugged Extreme – 7414 Getting Started Guide Regulatory Model: P45G Regulatory Type: P45G002 Notes, cautions, and warnings NOTE: A NOTE indicates important information that helps you make better use of your computer. CAUTION: A CAUTION indicates either potential damage to hardware or loss of data and tells you how to avoid the problem. WARNING: A WARNING indicates a potential for property damage, personal injury, or death. © 2016 Dell Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. Dell and the Dell logo are trademarks of Dell Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies. 2016 - 06 Rev. A01 Finding information and resources See the safety and regulatory documents that shipped with your computer and the regulatory compliance website at Dell.com/regulatory_compliance for more information on: • Safety best practices • Regulatory certification • Ergonomics See Dell.com for additional information on: • Warranty • Terms and Conditions (U.S. only) • End User License Agreement Additional information on your product is available at Dell.com/support/manuals. 3 System overview Figure 1. System front view Figure 2. System back view 1. display latch 2. microphone 3. privacy shutter (optional) 4. camera (optional) 5. camera status light (optional) 6. microphone 7. QuadCool sealed thermal chamber 8. outdoor readable display/touchscreen 4 9.
    [Show full text]
  • Unix the Vi Editor Tutorial
    UUNNIIXX -- TTHHEE VVII EEDDIITTOORR TTUUTTOORRIIAALL http://www.tutorialspoint.com/unix/unix-vi-editor.htm Copyright © tutorialspoint.com There are many ways to edit files in Unix and for me one of the best ways is using screen-oriented text editor vi. This editor enable you to edit lines in context with other lines in the file. Now a days you would find an improved version of vi editor which is called VIM. Here VIM stands for Vi IMproved. The vi is generally considered the de facto standard in Unix editors because − It's usually available on all the flavors of Unix system. Its implementations are very similar across the board. It requires very few resources. It is more user friendly than any other editors like ed or ex. You can use vi editor to edit an existing file or to create a new file from scratch. You can also use this editor to just read a text file. Starting the vi Editor There are following way you can start using vi editor − Command Description vi filename Creates a new file if it already does not exist, otherwise opens existing file. vi -R filename Opens an existing file in read only mode. view filename Opens an existing file in read only mode. Following is the example to create a new file testfile if it already does not exist in the current working directory − $vi testfile As a result you would see a screen something like as follows − | ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ "testfile" [New File] You will notice a tilde on each line following the cursor.
    [Show full text]
  • Editing and Running Standard ML Under GNU Emacs
    Editing and Running Standard ML under GNU Emacs SML mode, Version $Name: $ August 1999 Authors: Matthew J. Morley and Stefan Monnier Copyright °c (Anon) GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. SML mode is distributed in the hope that it will be useful, but WITHOUT ANY WAR- RANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs; see the ¯le COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. Chapter 1: Introduction 1 1 Introduction SML mode is a major mode for Emacs for editing Standard ML. It has some novel bugs, and some nice features: ² Automatic indentation of sml code|a number of variables to customise the indentation. ² Easy insertion for commonly used templates like let, local, signature, and structure declarations, with minibu®er prompting for types and expressions. ² Magic pipe insertion: | automatically determines if it is used in a case or fun construct, and indents the next line as appropriate, inserting => or the name of the function. ² Inferior shell for running ML. There's no need to leave Emacs, just keep on editing while the compiler runs in another window. ² Automatic \use ¯le" in the inferior shell|you can send ¯les, bu®ers, or regions of code to the ML subprocess. ² Menus, and syntax and keyword highlighting supported for Emacs 19 and derivatives.
    [Show full text]