RT Cunningham

Web Editors for Website Text Areas – Licensing and the Devil in the Details

web editors I have spent way too much time reading about and testing various web editors designed for website text areas. It would be impossible for me to list all of them. The two most popular are CKEditor and TinyMCE.

When I started working on RTCMS, my main goal was to avoid using any kind of database software. I accomplished that goal by storing everything as JSON encoded text files. My secondary goal was to make it as easy to insert images as it is with WordPress. I have not reached that goal and I probably never will.

Web Editors and Licensing Details

I understand software developers need to earn a living somehow. That’s fine when they’re dealing with companies that make money, even indirectly, using that software. The rest of us can’t afford to pay licensing fees for products that won’t help us make money in any way.

When last time I wrote about RTCMS, I mentioned I settled on CKEditor and Roxy Fileman. I went back and reread the pricing details for CKEditor. It’s free for freelancers and small projects. It’s the “up to 5 active users” that threw me off. And where do they draw the line on small projects?

I then went to check the pricing details for the self-hosted version of TinyMCE. It has no such restrictions for the community version. So… I switched to TinyMCE and then looked for a better file manager. Both CKEditor and TinyMCE charge monthly subscription fees for their plugins (CKFinder and MoxieManager, respectively).

Responsive filemanager is better than Roxy Fileman. I ignored it when reading about it at most places because of what I read about needing an API key for the Adobe Aviary photo editor. The editor isn’t necessary and the key isn’t necessary when not using it. It only works online anyway. I’m developing offline.

Web Editors and the Devil in the Details

I don’t like adding JavaScript functions. Both CKEditor and TinyMCE require them, after loading the scripts for either bundle. Getting the configuration details set up the way I want them is always a pain.

I’m lucky TinyMCE’s configuration instructions are easier than CKEditor’s. It doesn’t make them better, of course. I’m also lucky the corresponding instructions for Responsive Filemanager are easy as well.

The footer script looks like this (so far) and it works:

    <script>
      tinymce.init({
        selector: '#editor',
        width: 970,
        height: 300,
        relative_urls: false,
        remove_script_host: false,
        plugins: 'advlist code fullscreen image link lists media responsivefilemanager',
        menubar: 'false',
        toolbar: 'code bold italic bullist numlist blockquote link image alignleft aligncenter alignright fullscreen',
        image_advtab: true,
        external_filemanager_path: '/admin/filemanager/',
        filemanager_title: 'Responsive Filemanager',
        external_plugins: { 'filemanager' : '/admin/filemanager/plugin.min.js'}
      });
    </script>

I edited the “config.php” file for Responsive Filemanager to keep the uploads folder with the root of the website while keeping the rest with the admin area:

...
'upload_dir' => '/images/',
...
'current_path' => '../../images/',
...
'thumbs_base_path' => 'thumbs/',
...

The Best Web Editors

The WordPress web editors (visual and HTML) are based on TinyMCE, but they’re far more enhanced. The file manager is awesome. WordPress, however, has hundreds of developers working on it. RTCMS has only one, me.

To set up one right-aligned image, surrounded by a hyperlink, I have to use three buttons: Insert/edit image, insert/edit link and align right. I have to use the image button to insert the image, then select it with the other two buttons to further act on it. Yes, it’s completely different from WordPress, which is quite okay. Just a bit more tedious.

There are better web editors than any of these. Unfortunately, getting them to work the way I want them to work is impossible. Even though I can code in JavaScript and other languages, I’m not very good at it. Besides, I want to reinvent as little as possible.

I hope to share what I’ve done, eventually. It won’t be the best of anything but it’ll be mine.

Share:    

RT Cunningham
October 31, 2018
Web Development