Ascii Art Writer

0 views
Skip to first unread message

Chieko Boteler

unread,
Aug 3, 2024, 4:13:25 PM8/3/24
to joydanceges

Looking into he SDF Writer node the DefaultSDFWriter#openOutputWriter method is specifying US-ASCII as the Charset. I cant see in the specification for SDF ( -formats/ctfile-formats.zip) that the data has a charachter limit other than a charachter max length.

Is there any chance of this functionality being added to the SDF reader/writer? I use knime to run various filters to weed out data quality problems, and it's really not great if in doing so all the alphas, betas, primes etc end up getting scrambled in the process.

@swebb - Might be worth holding off a little, as I have done some re-working of the FileHelpers class internally. I hope to push it with some new nodes in the not to distant future, and that will expose a new method,

One of the key advantages of KNIME for me is the level of flexibility it gives me to make tools to solve problems without needing admin rights. It would be great if this functionality could be integrated into the SDF reader/writer node itself, rather than having to edit ini files.

@WildCation Yet, I hope so, that the UTF-8 support could be integrated into SD read/write node.
what OS your use? I use linux, and I could untar the knime software into my home folder (hence, you will have enough permission to edit anything at your local home) , and run it.
If you are using Windows, you may try to download the zip version of knime, then unzip it into the folder that you have admin rights and run it.

Thanks - glad it is working. I will think about whether we can easily provide options turn the extra parsing on and off in node dialogue without breaking any of the other nodes sharing the underlying code

It is a bit slower than using the standard KNIME SDF writer node because of the additional steps in the process - however, it works much better for me than using the String to Binary node, which almost always runs out of java heap space and falls over before completion. And best yet, thanks to this and your new SDF reader node, no scrambled special characters.

Note: I'm not looking for languages that are able to output ASCII art, but rather ones intentionally designed to be able to complete ascii-art challenges in a relatively short and concise way.

Under the hood, V is just vim, but all of the keystrokes are run automatically, and the contents of the vim buffer are printed to STDOUT when the program is over. This just makes running it more convenient.

Some history on the language. When I started using the vim text editor for code-golf, I discovered that it's actually pretty good at it, but has some annoying features that make it more difficult to compete it. For example, you can set up a "while loop" of sorts by doing

It is 2d by nature. One feature is that is has a "cursor" position, where most of the commands do something based on where the cursor is in the text. The other commands move the location of the cursor. For example, x deletes a single character, but Wx moves forward a word and then deletes a character. Since most other languages are not intentionally 2 dimensional, this offers a nice edge when the challenge is about positioning text in 2D space

All of it's internal memory, which is just a 2d array of characters, is implicitly printed when the program ends. Additionally, all inputs is implicitly added into it's internal memory, which is nice when most of the challenge is about changing the input in a certain way.

It is very confusing to learn. It's also very powerful, but because it's based on a very popular text editor that is 30 years old, there are lot's of obscure features that could very easily confuse new users.

Even though it is better at handling numbers than vim, it's number support is still not great. Personally, I think this makes it more fun to work in (kind of like using retina for tasks regex was never intended for). :D

I recently made a new programming language, called Turtld, which operates on a grid of characters with a turtle, which moves around the grid, writes to the grid, and has control flow with the grid. The grid is implicitly printed at the end. By this fact that it does not have to write spaces, and that it can write the text spatially, rather than left to right, up to down, it probably makes it meet the definition given, being good at ascii art.

Currently, there are not any docs, so you probably will not be able to use it, unless you want to read my interpreter, which is probably not something you want to do. I think there may also be bugs in the interpreter, but the spec is not developed enough to say if it is a bug. Turtld will probably be finished soon, with docs and all, though

While 05AB1E isn't intended for ASCII-Art directly, I've won 2 challenges with it. The best thing about 05AB1E is that, even with the simple base conversion there's often tricks you can use to extend and even halve your byte-count. Often in ASCII challenges there are repitition tricks you can utilize to only draw half the pattern then flip and concatenate. If it's a four way pattern you can do things like zip and bifurcate to only draw a corner of the pattern. There's plenty of data-structure manipulation techniques to use in conjunction with this simple base compression idea.

Paintbrush is a recreational programming language created by myself, Hyper Neutrino, for the purposes of being good at ASCII-Art. It doesn't compete well with Charcoal in many cases, but it can take input and do a variety of other things. It operates on a 2D grid of characters and is able to manipulate the background character, manipulate what is considered a background character at the time, shift rows and columns, move rows and columns, copy rows, columns, or the entire grid, etc.

A month ago I realized I really like drawing ascii art. Originally I was using yourworldoftext.com but it lacks features I wanted. So I ended up making my own webapp that lets people draw ascii art together on an infinite canvas.

ASCII art is a graphic design technique that uses computers for presentation and consists of pictures pieced together from the 95 printable (from a total of 128) characters defined by the ASCII Standard from 1963 and ASCII compliant character sets with proprietary extended characters (beyond the 128 characters of standard 7-bit ASCII). The term is also loosely used to refer to text-based visual art in general. ASCII art can be created with any text editor, and is often used with free-form languages. Most examples of ASCII art require a fixed-width font (non-proportional fonts, as on a traditional typewriter) such as Courier for presentation.

Among the oldest known examples of ASCII art are thecreations by computer-art pioneer Kenneth Knowlton from around 1966, who was working for Bell Labs at the time.[1] "Studies in Perception I" by Knowlton and Leon Harmon from 1966 shows some examples of their early ASCII art.[2]

ASCII art was invented, in large part, because early printers often lacked graphics ability and thus, characters were used in place of graphic marks. Also, to mark divisions between different print jobs from different users, bulk printers often used ASCII art to print large banner pages, making the division easier to spot so that the results could be more easily separated by a computer operator or clerk.[3] ASCII art was also used in early e-mail when images could not be embedded.

TTY stands for "TeleTYpe" or "TeleTYpewriter", and is also known as Teleprinter or Teletype.RTTY stands for Radioteletype; character sets such as Baudot code, which predated ASCII, were used. According to a chapter in the "RTTY Handbook", text images have been sent via teletypewriter as early as 1923.[6] However, none of the "old" RTTY art has been discovered yet. What is known is that text images appeared frequently on radioteletype in the 1960s and the 1970s.[7][8]

In the 1960s, Andries van Dam published a representation of an electronic circuit produced on an IBM 1403 line printer.[9] At the same time, Kenneth Knowlton was producing realistic images, also on line printers, by overprinting several characters on top of one another.[2]Note that it was not ASCII art in a sense that the 1403 was driven by an EBCDIC-coded platform and the character sets and trains available on the 1403 were derived from EBCDIC rather than ASCII, despite some glyphs commonalities.

The widespread usage of ASCII art can be traced to the computer bulletin board systems of the late 1970s and early 1980s. The limitations of computers of that time period necessitated the use of text characters to represent images. Along with ASCII's use in communication, however, it also began to appear in the underground online art groups of the period. An ASCII comic is a form of webcomic which uses ASCII text to create images. In place of images in a regular comic, ASCII art is used, with the text or dialog usually placed underneath.[10]

During the 1990s, graphical browsing and variable-width fonts became increasingly popular, leading to a decline in ASCII art. Despite this, ASCII art continued to survive through online MUDs, an acronym for "Multi-User Dungeon", (which are textual multiplayer role-playing video games), Internet Relay Chat, Email, message boards, and other forms of online communication which commonly employ the needed fixed-width.

Over the years, warez groups began to enter the ASCII art scene.[13] Warez groups usually release .nfo files with their software, cracks or other general software reverse-engineering releases.[14] The ASCII art will usually include the warez group's name and maybe some ASCII borders on the outsides of the release notes, etc.[15]

Early computer games played on terminals frequently used ASCII art to simulate graphics, most notably the roguelike genre using ASCII art to visually represent dungeons and monsters within them.[29] "0verkill" is a 2D platform multiplayer shooter game designed entirely in color ASCII art.[30] MPlayer and VLC media player can display videos as ASCII art through the AAlib library. ASCII art is used in the making of DOS-based ZZT games.

c80f0f1006
Reply all
Reply to author
Forward
0 new messages