Holophrasted displays in an interactive environment
International Journal of Man-Machine Studies
Gandalf: software development environments
IEEE Transactions on Software Engineering
The VORTEX document preparation environment
Proceedings of the second European conference on TEX for scientific documentation
CHI '86 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Enhancing program readability and comprehensibility with tools for program visualization
ICSE '88 Proceedings of the 10th international conference on Software engineering
Incremental document formatting
DOCPROCS '88 Proceedings of the ACM conference on Document processing systems
SDE 3 Proceedings of the third ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
Software—Practice & Experience
A language-independent pretty printer
Software—Practice & Experience
Flexible Text Display with Lector
Computer - Special issue on sharing: high performance at low cost
Generation of formatters for context-free languages
ACM Transactions on Software Engineering and Methodology (TOSEM)
ACM SIGPLAN Notices
Design patterns for lazy evaluation
Proceedings of the thirty-first SIGCSE technical symposium on Computer science education
JavaML: a markup language for Java source code
Proceedings of the 9th international World Wide Web conference on Computer networks : the international journal of computer and telecommunications netowrking
ACM Transactions on Programming Languages and Systems (TOPLAS)
User Format Control in a LISP Prettyprinter
ACM Transactions on Programming Languages and Systems (TOPLAS)
Program indentation and comprehensibility
Communications of the ACM
Characteristics of application software maintenance
Communications of the ACM
Software Visualization in the Large
Computer
Beyond Pretty-Printing: Galley Concepts in Document Formatting Combinators
PADL '99 Proceedings of the First International Workshop on Practical Aspects of Declarative Languages
Prettyprinting in an interactive programming environment
Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation
Language-Agnostic Program Rendering for Presentation, Debugging and Visualization
VL '00 Proceedings of the 2000 IEEE International Symposium on Visual Languages (VL'00)
A New Language Independent Prettyprinting Algorithm
A New Language Independent Prettyprinting Algorithm
A PASCAL prettyprinter with a different purpose
ACM SIGPLAN Notices
Prettyprinting styles for various languages
ACM SIGPLAN Notices
Hi-index | 0.00 |
Programmers working on large software systems are faced with an extremely complex, information-rich environment. To help navigate through this, modern development environments allow flexible, multi-window browsing and exploration of the source code. Our focus in this paper is on pretty-printing algorithms that can display source code in useful, appealing ways in a variety of styles. Our algorithm is flexible, stable, and peephole-efficient. It is flexible in that it is capable of screen-optimized layouts that support source code visualization techniques such as fisheye views. The algorithm is peephole-efficient, in that it performs work proportional to the size of the visible window and not the size of the entire file. Finally, the algorithm is stable, in that the rendered view is identical to that which would be produced by formatting the entire file. This work has 2 benefits. First, it enables rendering of source codes in multiple fonts and font sizes at interactive speeds. Second, it also allows the use of powerful (but algorithmically more complex) visualization techniques (such as fish-eye views), again, at interactive speeds. We have built a pretty-printing plug-in for Eclipse that allows the use of sophisticated formatting techniques, including such features as multiple fonts and fish-eye views. Our incremental algorithm enables this plug-in to produce readable layouts (without ugly line-wrapping) within a wide range of window sizes, at interactive speeds.