topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Friday March 29, 2024, 1:57 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Tuxman [ switch to compact view ]

Pages: [1] 2 3 4 5next
2
Living Room / Winter Solstice 2023
« on: November 30, 2023, 04:49 AM »
In the third of sunwait we light
The candle of Thurisaz so bright
When the force of winter upon us lies
May the return of spring in it rise


23 days and three more candles until the celebration left.

46047351_2043129022374817_2809974454963142656_n.jpg

3
N.A.N.Y. 2024 / NANY 2024 - WordStar to Markdown converter
« on: August 25, 2023, 08:47 PM »
While mouser plays games, I learned how to write a parser.

NANY 2024 Entry Information

Application Name ws2markdown
Version 0.2.0
Short Description Converts .ws into .md (= WordStar into Markdown).
Supported OSes  :tellme:
Download Link See "Installation"
Version History
  • 0.2.0: A few quality improvements for a better first start experience.
  • 0.1.0: First version. Could actually work. (Tried with ws2markdown's README.)
Author  :-*

Description
This is a small utility that converts WordStar (.ws) into Markdown (.md) files. I wrote it because the WordPress input field sucks, so now I can write my blog posts in a real text processing software, then convert them into Markdown and upload them with one of the gazillion Markdown-to-WordPress converters. There is no good Markdown editor either, I'm afraid.

Features
Can convert (basic) WordStar files into Markdown.

Planned Features
A couple of (non-Markdown-compliant) dot commands are not supported (= detected as dot commands) yet. Maybe I'll push an update. Or I'll just wait for contributions.

Screenshots
2023-08-26_03-33.png

Usage
Installation

% cargo install ws2markdown

Using the Application
Usage: ws2markdown [inputfile.ws] [outputfile.md]
If inputfile = empty, a file picker will appear.
If outputfile = empty, the output will be printed to stdout.

Uninstallation

% cargo uninstall ws2markdown

Tips
Yes, please.

Known Issues
Complex WordStar documents might still spawn dot commands in your text. See "Planned Features" for the reason.

4
Coding Snacks / Celsius <-> Fahrenheit in COBOL
« on: June 12, 2023, 08:33 AM »
I migrated to macOS, so my C/F converter in PowerShell makes less sense to me. That's why I rewrote it ...



... in COBOL.  8)

       IDENTIFICATION DIVISION.
       PROGRAM-ID. cf.
       DATA DIVISION.
       
       WORKING-STORAGE SECTION.
       
       *> We store four variables here:
       *> - input unit (c/C or f/F)
       *> - input value (decimal number)
       *> - formatted input (without leading zeroes)
       *> - output value (without leading zeroes)
       01 input-unit PIC X(1) VALUE SPACES.
       01 input-value PIC S9(10)V999 COMP-3.
       01 input-formatted PIC +ZZ9.99.
       01 output-value PIC +ZZ9.99.

       PROCEDURE DIVISION.
       PERFORM 0000-START.

       0000-USAGE.
           DISPLAY "Usage: cf <c or f> <value>."
           STOP RUN.

       0000-START.
           ACCEPT input-unit FROM ARGUMENT-VALUE
           IF input-unit = SPACE OR LOW-VALUES THEN
               PERFORM 0000-USAGE
           ELSE
               *> Cleanup: trim() input-unit
               INSPECT input-unit REPLACING ALL SPACES BY LOW-VALUES
               MOVE FUNCTION UPPER-CASE(input-unit) to input-unit
           END-IF

           ACCEPT input-value FROM ARGUMENT-VALUE
           MOVE input-value TO input-formatted

           IF input-unit = "C" THEN
               COMPUTE output-value = input-value * (9 / 5) + 32
               DISPLAY input-formatted " °C = " output-value " °F"
           ELSE
               COMPUTE output-value = (input-value - 32) * (5 / 9)
               DISPLAY input-formatted " °F = " output-value " °C"
           END-IF

       STOP RUN.
.

% ./cf c 0
+  0.00 °C = + 32.00 °F

5
Living Room / Windows Club 27: Season's End.
« on: March 23, 2023, 12:17 PM »
I guess it all depends on where you started.

If you have invented (or at least started using) Multics and PL/I, you might use Debian Linux. I myself started my journey through computing with Windows 3.11, QBASIC and Turbo Pascal and almost always had at least one Windows installation ready. (There was a brief phase around 1998 when I had a Linux-only desktop. But that didn't last long). On 22 March this came to an end.

Sometime in the autumn of 1996, not-quite-as-old Tuxman decided to squander his savings, which were considerable by the standards of the time, by buying one of the PCs that were on the upswing at the time. It was a 133 MHz tower with a gigantic 1.2 GB hard drive. I had upgraded the RAM from 16 to 64 megabytes. That should last until the end of my days. I was so naive. At school, we - "we" were a voluntary working group, computers were not yet compulsory teaching material back then - used Windows 3.11, DOS and a strange hobbyist system called Linux, which was really awful to use back then. At least that hasn't changed since then. I already had the still new Windows 95 and was thus at least suddenly a less unpopular classmate. A school friend already had a keyboard, but he didn't have the money for the rest.

I was playing Rayman and Tomb Raider (1 and 2) and kept deleting system files because I wanted to see what would happen. Not a month went by without a repair, until at some point I got fed up with it and wanted to be able to get the system working again myself. In the meantime, I programmed mainly in Visual Basic and wrote batch scripts. Visual Basic 6.0 was to remain my last version, then I started learning C++. I found the Visual Basic syntax insufficient, and the still young .Net (which I was able to test in a beta version) presented me with too many questions, especially this one: What am I supposed to do with it? - I can't stand not knowing something. A few computer generations, programming languages learned, operating systems used and jobs held later, I earn my living essentially with Dart/Flutter and C#, I look back on it and wonder how it all could have happened.

My main machine was a dying ASUS gaming laptop, although I'm not a gamer. Gaming computers have the advantage that they can provide decent computing power for us developers to compile. It costs power and is noisy as hell, but you don't have to take a nap while a medium-sized Rust application runs through Cargo. "Was", because I retired the laptop yesterday.

As someone who prefers to use the latest software rather than the most stable, I also became a Windows Insider (that's what Microsoft calls its unpaid beta testers), so I had Windows 11 before the official release. Ha! - However, although I liked Windows Vista and Windows Me myself, I can hardly find anything positive to say about the development of Windows. From Windows 8 onwards (which I had consistently skipped at home until they had eliminated the worst problems with Windows 8.1), Microsoft seems to have little interest in satisfying us long-time "power users". The "Metro" Windows apps introduced with Windows 8, now called "UWP", are inconsistently distributed over the entire system, there are two apparently completely separate control panels, the performance improved with Windows 10 has again dropped noticeably - it is no longer fun to use Windows.

In my search for a replacement for my laptop, I quickly decided that I should use a desktop instead of a stationary laptop (for reasons of desk space) and that I also wanted to move away from Windows. That's enough. - The decision coincided with the announcement of the new Mac minis, which were supposed to be cheaper than the previous year's models, which was all too inviting for me, who have long since owned both an iPhone and a MacBook. A computer that is enormously inexpensive in terms of performance, with a unixoid system that has been officially supported for years, and which has an impressive performance with - especially in comparison to a gaming laptop - downright tiny energy consumption: I'll take it!

After almost 27 years, an era is coming to an end. I now only use Windows at work - my home is Apple-only now.

This will have little effect on my projects for DonationCoder, most of them run on several operating systems anyway. Only my Universal Formatting Toolbar - which makes intensive use of the Windows API - will probably never appear in a final version. (Did I already publish the alpha version somewhere? Do you want it?) On the other hand, I finally don't have to be annoyed by my oversized music player anymore.

I'm curious to see how this will turn out.

40B2B400-036D-4E1C-A432-E9DFF220795B.jpeg

6
DC Member Programs and Projects / Pin Window on Top
« on: February 05, 2023, 03:30 PM »
My first AutoHotKey v2 script.

Usage:
Press Ctrl+Space, the current window will be placed on top (and remain there).

Source:
#SingleInstance Force
^SPACE::WinSetAlwaysontop(, "A")

7
General Software Discussion / Twitter harakiri‘d. All was gone.
« on: January 20, 2023, 09:26 PM »
Ugh.

https://www.macrumor...ns-third-party-apps/

I mean, I gave Elon Musk the benefit of the doubt when he bought Twitter and everyone started screaming.

Time to start screaming myself.

I wish it would only be a software and not an important part of who I have become.

8
Found Deals and Discounts / WordPerfect Office 2021: 60% off
« on: November 27, 2022, 07:01 PM »

9
Coding Snacks / Celsius <-> Fahrenheit in PowerShell
« on: November 22, 2022, 05:15 PM »
I had a request to myself: I want to convert Fahrenheit <-> Celsius on Windows without having to install a whole bunch of GNU utilities (which would have been the easiest way, I presume). So I wrote a converter for Powershell which I use anyway. :)

Code: PowerShell [Select]
  1. function FtoC([double]$fahrenheit) {
  2.         $celsius = ($fahrenheit - 32) * (5/9)
  3.         "{0} °F = {1} °C" -f $fahrenheit,[math]::Round($celsius,3)
  4. }
  5.  
  6. function CtoF([double]$celsius) {
  7.         $fahrenheit = ($celsius * (9/5)) + 32
  8.         "{0} °C = {1} °F" -f $celsius,[math]::Round($fahrenheit,3)
  9. }

Usage:

> FtoC(32)
32 °F = 0 °C
> CtoF(0)
0 °C = 32 °F

10
Good news, everyone:

Today, we’ve filed a class-action law­suit in US fed­eral court in San Fran­cisco, CA on behalf of a pro­posed class of pos­si­bly mil­lions of GitHub users. (...) By train­ing their AI sys­tems on pub­lic GitHub repos­i­to­ries (though based on their pub­lic state­ments, pos­si­bly much more) we con­tend that the defen­dants have vio­lated the legal rights of a vast num­ber of cre­ators who posted code or other work under cer­tain open-source licenses on GitHub.

Yeah!

11
Mini-Reviews by Members / Nushell, "a new type of shell".
« on: September 11, 2022, 06:54 PM »
*Basic Info

App NameNushell
App URLhttps://www.nushell.sh
App Version Reviewed0.67.0
Test System SpecsWindows 11 with the Windows Terminal
Supported OSesLinux, macOS, and Windows (officially).
Support MethodsDiscord and GitHub (no account-free support, it seems).
Pricing SchemeFree software.
Reviewer Donation LinkGive me money!
Relationship btwn. Reviewer and Product None at all.

Intro:

Unlike other operating systems, Windows has a quite limited number of available command shells (minus the WSL). I have also said in the past that, three decades after the Plan 9 operating system was first released, I think that virtual teletypes ("terminals") are not really the way to control a computer in the 21st century anymore.

Nushell - one of those "look, we develop code in Rust!" projects, as if the language was sufficiently relevant - aims to be a "modern" shell which tries to go new ways: Instead of the classical Unix philosophy "everything is text", everything is a sortable, filterable object in Nushell, even results from remote APIs. That makes a lot of things easier if it's done right. Now is it?

WindowsTerminal_NRzCI5Vb16.png

Who is this app designed for:

People who actively work on the command line and would like to have a shell that has more modern constructs than just text, e.g. JSON from an API.

The Good

In theory, the shell works rather well: Right after its installation (I used Windows's package manager: winget install nu), it will add itself to the Windows Terminal (so you can make it your default shell if you like), display a startup screen (which contains information on how to remove it - basically, you'll need to edit the shell's configuration file which is documented quite well) and not get in your way. Even basic commands (like "ls", as seen on the screenshot) can make use of the object-based processing, but also the output of arbitrary external applications like Rust's Cargo can be parsed without a problem.

Windows-native shell built-ins like "dir" and "del" won't work though - "dir" and "del" are not valid applications. This should be less of a problem if you already use(d) PowerShell and/or a Unix-like operating system which also knows the "ls" and "rm" commands. (Note that Nushell's built-ins behave differently from their POSIX counterparts, but the help system is pretty good.)

As we're talking about the help system, this is also a quite good feature of the Nushell: While conservative shells usually have the verbosity of the ed text editor when you make a mistake, Nushell will guide you towards fixing your input.

WindowsTerminal_qBGeCEzgu9.png

The needs improvement section

A few things are still broken on the Windows version of Nushell; for example, you can't use it with a non-mapped network drive because of a quirky dependency, and a few other commands which work just fine in a PowerShell window lead to unforeseen errors as well. Windows is not a primary target for Nushell yet, but they're slowly getting there.

All we can do is report all problems which occur on our systems. :)

Why I think you should use this product

Try something new, finally work with long lists efficiently, maybe even help the developers make Nushell a good alternative. :)

How does it compare to similar apps

I think that the number of "similar" applications is roughly 0 - most shells, even "modern" ones like Elvish, stick to the classical approach of having (relatively) unstructured text as the only input and output format. While that approach has its advantages, Nushell is different; also, the fact that it works natively on contemporary Windows systems makes it stand out.

Conclusions

Nushell is a solid alternative command shell for Windows (and other operating systems) which needs a few more weeks to mature. I can imagine using it as my primary shell once its most obvious itches have been scratched.

12
N.A.N.Y. 2023 / NANY 2023: zb, a zip blog
« on: August 29, 2022, 06:04 PM »
NANY 2023 Entry Information

oh look, it's "that weird console guy writes a blog software again" day! but this time it's in lowercase. in fact, it is so much lowercase that i even post this in lowercase!

Application Name zb
Version n/a
Short description a self-contained blog software
Supported OSes all that run rust
Web page https://code.rosaelefanten.org/zb
Download link attached
Author hi.

description

this is my approach at creating a self-contained website. the whole site will be embedded as a zip archive right in the server binary file, so it is probably the most portable website you'll ever have.

one of zb's unique features it that it will render html, markdown and org-mode files, so if you prefer to write .org files instead of html, zb has you covered.

motivation

i first saw the concept of single binary websites in ted unangst's blog where he complained that go couldn't do this just as easily, because of its broken support for embedded zip files. as i play with both go and rust every now and then, i thought "how hard could it be to do it in rust?".

quite surprisingly (for me), it wasn't really hard at all.

how do i use this?

you'll need a zip file, containing your website. for the default start page, zb will search for one of the following files in the root path:

1. index.htm
2. index.html
3. index.md
4. index.org

if you prefer to use a different file name, you can pass --defaultpage name.ext when starting the application.

everything else in that zip file can be any file of your choice. relative references between them will work. (if they don't, please file a bug.)

first steps...

- use the attached zb.exe binary or

- install rust, then build zb with cargo:

fossil clone https://code.rosaelefanten.org/zb
cd zb
cargo build --release

now, concatenate your zb.exe with your zip file. assuming your zip file is named index.zip:

# powershell
cmd /c copy /b .\zb.exe+.\index.zip .\final-site.exe

# cmd
copy /b .\zb.exe+.\index.zip .\final-site.exe

once done ...

run the concatenated binary (in this example, final-site.exe) and your website will be delivered from port 8000. (you can change that: final-site --port 8081 would make it run on port 8081 instead.) from now on, every time you want to update your website, just create a new zip file and repeat the concatenation. (it should be easy to automatize that task.)

automatic converted html routing

it is important to note that the file extensions for .org, .md and html files are optional, so the file stuff/demofile.md can be reached over localhost:8000/stuff/demofile as well.

the search order for all files is:

1. /[path]
2. /[path].md
3. /[path].org
4. /[path].htm
5. /[path].html

planned features

none, but i accept patches.

tips

don't try this at home.

13
General Software Discussion / Contra Chrome
« on: April 14, 2022, 04:38 PM »
I've been struggling for years to tell Chrome users why using Chrome was not the smartest of all ideas. This year, there finally is a comic about that:
https://contrachrome.com

Good idea, actually!

14
This has been out in the wild for a few weeks, and I plan to maintain it for a few more months at least :P, so I won't wait for NANY 2023 to announce it here:

groffstudio_hLsp0Sa2FM.png

groffstudio is the least bad (and only) IDE for GNU troff, a free implementation of the standard POSIX typesetting system (see Wikipedia et al.).



Website (which is very beautiful as well)



While one could debate whether Linux, BSD and UNIX users would even need this (they usually use make or Mk for that), using groff on Windows is not quite as trivial: First you'll need to find and install groff with all required dependencies, then you'll need to learn how to use it on the command line without having access to the manual, because man does not exist on Windows. groffstudio has a button to download groff right from my servers - just unpack it somewhere in your %PATH% and you're good to go. (It will check whether it's there.)

Features:
  • Has a large button to generate .ps or .pdf files.
  • Can help you install groff on Windows.
  • Has built-in update checks (optional, off by default).
  • Open Source, licensed under the terms of the CDDL-1.1 license.
    (That still does not invalidate my copyright.)
  • Written in Free Pascal, using the LCL widget set, to make portability easier.
    Precompiled binaries for Windows and macOS exist, contributions are welcome.

Non-features:
  • Support for other troff implementations, like neatroff and Heirloom troff.
    Maintaining a GUI for one troff which has a relatively reliable set of installed features is hard enough.
  • A preview mode, as known from LaTeX editors like TeXstudio.
    Previewing requires compilation. Just compile.  :D
  • A formatting toolbar.
    As groff has a standard set of formatting commands, but all of its macro packages (and some preprocessors) come with their own set of additional commands, that would be either not helpful or awkward.

Enjoy or whatever.

15
N.A.N.Y. 2022 / NANY 2022: DateAdder
« on: December 17, 2021, 05:08 PM »
NANY 2022 Entry Information

Application Name dateadder
Short Description Fulfills the single need of having a platform-independent tool that lets the user add days, weeks or even months to today's (or any other) date and see the resulting date.
Supported OSes In theory, any that run Go (as of today, these are: DragonFly BSD, FreeBSD, Linux, macOS, NetBSD, OpenBSD, Plan 9, Solaris, and Windows).
Download Link Attached.
Version History
  • 2021.12: First public announcement on DonationCoder.
Author me.


Description
I wanted to find out which day is "today in two weeks" without having to click through a monthly calendar. Now I can.

Non-features
  • Does not support units smaller than a day.
  • Also does not support substracting days, weeks or even months.

Planned Features
None.

Screenshots
WindowsTerminal_2021-12-18_00-05-51.png

Usage

Installation

Grab the .exe file from the attachment and put it wherever you want. Send me a personal message for non-Windows builds and/or if you need the source code.

Using the Application
You'll need a terminal window. (On Windows, the Windows Terminal is pretty nice.) Then just run any calculation of your choice:

% ./dateadder "today in a week"
% ./dateadder "2021/12/31 plus four days"

Et cetera, et cetera.

Uninstallation
Delete the .exe file.

17
N.A.N.Y. 2022 / Now what's this?
« on: May 21, 2021, 04:35 PM »
Are we supposed to post our NANY 2022 projects here and they'll be moved then?

18
N.A.N.Y. 2021 / NANY 2021: yaydl
« on: November 08, 2020, 03:01 PM »
NANY 2021 Entry Information

Application Name yet another youtube down loader
Version 0.3.0 changes regularly
Short Description does what it says
Supported OSes developed on macOS, compiled for Windows 10 11, but in theory, yaydl should run where Rust is available
Web Page https://code.rosaelefanten.org/yaydl
Downloadvia cargo: cargo install yaydl
System Requirements
  • ffmpeg. unless you can live with the default video formats and don’t ever use the audio-only option.
Author that would be me


Description
You know what was missing? A tool to download YouTube video files! Here’s mine.

Features

  • Can download videos.
  • Can optionally keep only the audio part of them.
  • Could convert the resulting file to something else (requires ffmpeg).
  • Comes as a single binary (once compiled) - take it everywhere on your thumbdrive, no Python cruft required.

Non-features

The list of features is deliberately kept short:

  • No output quality choice. yaydl assumes that your internet connection is good enough, or else you would stream, not download.
  • No complex filters. This is a downloading tool.
  • No image file support. Videos only.

Missing features (patches are welcome)

  • yaydl currently ignores video meta data (except the title) unless they are a part of the video file.
  • Playlists are not fully supported yet.
  • More supported sites: Possible, but not implemented yet. Check the README!

Usage

USAGE:
    yaydl [FLAGS] [OPTIONS] <URL>

ARGS:
    <URL>    Sets the input URL to use

FLAGS:
    -h, --help          Prints help information
    -x, --only-audio    Only keeps the audio stream
    -v, --verbose       Talks more while the URL is processed
    -V, --version       Prints version information

OPTIONS:
    -f, --audio-format <AUDIO>    Sets the target audio format (only if --only-audio is used).
                                  Specify the file extension here (defaults to "mp3").
    -o, --output <OUTPUTFILE>     Sets the output file name

19
NANY 2021 Entry Information

Application Name ClipURLCleaner
Short Description Cleans URLs in your clipboard automatically
Supported OSes Tested on macOS and Windows 10, might work elsewhere
Web Page https://code.rosaele...n.org/clipurlcleaner
Download Link Attached
Version History
  • Update 2: Fixed Windows tray icon.
  • Update 1: Fixed Windows 10 start.
  • Initial version.


Description
Problem:
Sharing shortened URLs like bit.ly/whatever or URLs with trackers like ?utm_something=abc (or even both) is annoying.

Solution:
Watch the clipboard and clean URLs automatically.

Screenshots
Bildschirmfoto 2020-09-23 um 16.07.18.png

Known bugs:
The tool won’t work behind a corporate proxy.

20
Living Room / [2018] Wanted: Console Text Editor for Windows
« on: June 29, 2020, 10:24 AM »
A pretty good article that made me rediscover the GRIEF editor:
https://virtuallyfun...-editor-for-windows/

(Now I usually use Emacs and/or Acme, but a good Windows CLI editor is still good to have.)

21
sfd -url https://some.website/foo.html -target .

--> You'll have a single .htm file that includes all CSS, JS and image resources baked right into the source code. Enjoy or whatever.

Sources: https://code.rosaelefanten.org/sfd
Binaries: Attached.

22
General Software Discussion / WordPerfect Office 2020
« on: May 22, 2020, 08:27 AM »
Ah, while we're at it: WordPerfect Office 2020 is released!
https://www.wordperfect.com/en/

The prices are still interesting, but the new Microsoft Office filters seem to work just fine. Sadly, the also-new .odt import/export is a bit quirky yet. I hope they can fix it.

23
Available for Windows, macOS and inferior "systems", SoftMaker has already released their first Office 2021 beta version into the wild. I'm currently trying it on macOS and it seems to work just fine. Currently, a paid license enables me to install it on "up to five computers", so my two Windowses and my one MacBook would be covered. The only thing that prevents me from instantly buying it is that SoftMaker has already started to introduce features which are only available in the subscription version "Office NX" and I hate subscriptions...

24
"Only" 20 days left, but if you still don't have WordPerfect Office, the best* available office suite, this is your chance:

https://www.humblebu...work-remote-software

* Unless you require XLSX/DOCX format support which is currently not that great in WordPerfect/Quattro Pro. I assume that WordPerfect Office 20, probably coming in May or June, will fix that.

25
DC Member Programs and Projects / SCCS support for the zsh shell
« on: April 10, 2020, 03:50 AM »
I wrote a plugin for oh-my-zsh that displays the status of SCCS "repositories". GitHub, this time (because it's a pull request):

https://github.com/d...2b8d092/plugins/sccs

screenshot.png

If the oh-my-zsh folks won't merge it before December 2020, I'll make this a NANY entry as well and host it somewhere else.  :D

Pages: [1] 2 3 4 5next