Disable the Readme editor in folder header

Nextcloud version (eg, 12.0.2): 18.0.1
Operating system and version (eg, Ubuntu 17.04): some recent Linux, poss Debian
Apache or nginx version (eg, Apache 2.4.25): Apache 2.4.41
PHP version (eg, 7.1): 7.3

The issue you are facing:

Really nice feature in NC18 to automatically show the contents of a Readme.md in the header above the file list for a folder.

However it can be a right pain that whenever you click or tap on it it immediately goes into edit mode and you suddenly find yourself editing the readme text.

How can I disable this functionality - it is a big big nuisance in shared group folders where naive users click on the text by accident and then inadvertently change it.
This, for me, is not a nice feature - you can always edit the text by clicking on the Readme.md file. The extra direct editing probably seems like a cool feature when it was invented but actually causes problems.

Is there any way to turn inline editing of the readme off?

In addition the height of the area that displays the readme text jumps around depending where you click. This means that sometimes when you click on a file row in the list the whole display jumps up (or down) and you find you have clicked on the wrong file - not good.

A nice feature, spoilt by poor design turning it into a problem feature.

Is there a way to make the height of the header readme area fixed so that it doesn’t change?

cool, thanks. Where is this stuff documented - I searched user, admin and developer docs and found no mention of it?

Also is there any way to run these occ commands from within NC or simply by editing a config file. It seems a little strange to have to do a whole load of basic configuration using a command terminal and obscure commands. If it was all in a config /settings file it could be self documenting with comments.

I’ll try what you suggest and see the effect before marking as a solution.

Nope, that is NOT a solution. Not only does it disable the editing it also disables the display of the Readme.md in the filelist header which is a real nice useful feature.

It is just the fact that it turns into an editor and causes the display to jump all over the place that I want to kill. The display of a readme is really a very good idea. But editing needs to be by editing the file, not something that anyone can do by mistake.

There is a OCC App in the Store. Press Enter to see all commands.
You have a readme on top? How to do it?

1 Like

It just happens by default in NC18 it seems. The content of a Readme.md file, if it exists in the folder, is displayed in the header area immediately above the files list.

It is a nice feature as it enables you to display reminders to the users as to what the folder is for, what it should and should not contain and so on.

As @thijssie85 pointed out (and then deleted) the occ config command
occ config:app:set text workspace_available --value=0
will disable the use of that space by the text app - but I’m not sure where the code that actually triggers the insertion of the Readme.md file contents comes from - is it the Text app, or the Files app?

In any event the display is buggy - several issues with the layout and the autohide of the toolbar and height of the editing div which need addressing but which app is doing this?

PS thanks for pointing out the OCC app, that is useful. The specific config setting workspace_available for the Text app doesn’t seem documented anywhere - I wonder what other settings there are…

3 Likes

If you don’t need the other features it offers, the “Text” app is the one that enables this functionality. Disabling the whole app also removes readme.md editing on every folder (no obscure command line incantations required).

2 Likes

A partial solution. Ah, thanks you @jackman. Unfortunately we quite like the Text app for its collaborative simultaneous editing feature - although it is a bit rubbish limited in its markdown syntax and rendering.
Also if you disable Text then the Readme display disappears (not surprisingly) which is not the point.
What I would like is to have Readme.md displayed in the workspace area using Text but for it to be readonly - no wasted space for the toolbar and no possibility of a naive user accidentally changing the text. Clicking on the text should do nothing.
I guess then it will need a modification to the Text app…but at least you have pointed me in the right direction.

Maybe someone can use it:

/* do not show the readme.md file in the list */
tr[data-file*="Readme.md"] {
display: none !important;
}
/* hide the edit menu of the readme.md */
.menubar.autohide{
display: none!important;
}
/* make the "editor field" not clickable */
#editor-wrapper div.ProseMirror[contenteditable="true"], 
#editor-wrapper div.ProseMirror[contenteditable="false"] {
pointer-events: none!important;
}
/* give the workspace a fixed height to make it scrollable */
#rich-workspace #editor-container {
height: 250px!important;
}
1 Like

Many thanks for the disable the editor field one. I’d not realised you could disable pointer-events in css.

Doing it the way you have works, but it still allows the empty space to be clickable if there is no Readme.md file, so you need to also disable pointer events for the #rich-workspace area itself.
In fact if you do that then you don’t need the specific #editor-wrapper selectors as we are using !important.
So a simple #rich-workspace { pointer-events: none!important; } seems to work just as well.

I did the hiding of the menu bar by #rich-workspace .menubar { display:none !important; } which makes it specific to the rich-workspace area in case something else uses the .menubar.autohide class elsewhere.

Hiding the Readme.md file is an interesting idea, but probably need to enable it for admins somehow, as otherwise you have to disable that bit of css in order edit an existing Readme.md (you can still create a new one by using the (+) button which creates it and launches the Text app to edit it).
There is a data-permissions="nn" attribute on the row, but I think that would only tell if the logged in user has permissions to edit or delete the file, with no distinction for admin.

Incidentally does anyone know if there is a table for the meaning of the values in data-permissions and data-share-permissions. It appears to be a bit mask, but I haven’t managed to completely reverse engineer it yet. It must surely be documented somewhere ! I got as far as being able to determine if a file was visible because it was shared, or because the user had direct access to it (so that I could differentiate them in the table for the user)

There is the Custom CSS app to make these things easier: https://apps.nextcloud.com/apps/theming_customcss

Wouldn’t it be easier to enable the readme.md editing like, let’s say, with doble click… or something else that reduces the accidental editing? Sometimes I find myself deleting redme.md over and over again… it’s really anoying!
cheers
d

2 Likes

The feature can be toggled on or off per folder. In the bottom right there is a settings button which reveals some options including “Show rich workspaces”.

4 Likes

that setting seems to be not per folder, but per the user. It turns them off for all folders for the particular user, which is some help but not as good as making them work more effectively and less intrusively…

Sometimes it’s the simplest of solutions…THANKS tanc, I was searching and just did not find this until you pointed it out. :slight_smile:

Hi, is there any way of setting this up for all users without messing aroung with some nextcloud database table data ?
It would be nice if as an admin can setup this option for all nextcloud users. Do you know if there is an option somewhere ?
thanks
best regards

See GitHub - nextcloud/text: 📑 Collaborative document editing using Markdown

1 Like

Nice ! It worked like a charm !
thanks
:wink:

Hello,

Since version 22 of Nextcloud, the OCCWeb app no longer works (at least for now).

As experienced and explained at Ouvaton on shared hosting, it is possible to deactivate Rich Workspaces manually.

You must connect to the SQL database, select it then run the following query:

INSERT INTO `oc_appconfig` (`appid`, `configkey`, `configvalue`) VALUES ('text', 'workspace_available', '0');

There you go, Rich Workspaces are now disabled without requiring OCCWeb.

Long live Nextcloud :metal:,

C.