在NextCloud中启用MarkDown编辑器

Nexcloud是一个很好的内容管理工具,很多人把它作为个人云盘来使用,特别是结合家用路由器或NAS来搭建,更加方便实用。

同时,通过一定的插件安装和使用,nextcloud也是一个很好用的云文档编辑器,使用网络供应商的云编辑器可能会遇到网络等问题,而自建云编辑服务则响应快速。

nextcloud搭建成云编辑器主要考虑一般通用文件的编写浏览,一类是office文档,另一类则是代码、MarkDown类专用文档。其中office文档可以通过集成onlyoffice等应用来解决,MarkDown文档则可以通过集成MarkDown Editor插件来解决。

1、安装相关插件

要实现在nextcloud比较好的MarkDown类文档编写体验,评价比较高的插件是MarkDown Editor,可以在nextcloud的应用市场中直接安装该插件。但这里存在一个问题,仅安装该插件并不能实现同时文本编辑和实时预览,需要同时安装另外两个组件:Text 和 Plain text editor

看官网介绍:

当这些插件都正确安装并启用后,用右键或文件旁边的三个点,可以选择启用同时编辑和预览。

此时再打开文件后,界面如下:

左面是文本编辑区,右边是实时预览。

2、解决一个错误

新版的插件安装,当使用数学公式时提示错误:

在源码网站,许多人都遇到同样的问题,有一位作者提出了临时的解决方案,效果很好。

3、调整文本编辑和预览字体大小

原始安装的插件在电脑上显示字体很小,到了几乎看不清的状态,nextcloud中MarkDown的字体显示本质上是web浏览器的渲染设定,修改相关参数则可以实现在web端的不同样式。

进入安装目录的files_markdown/css文件夹,修改preview.css文件:

3.1、原字体14px,改为16px

3.2、加入一条设置,修改文本编辑字体大小:

通过加入各种元素,发现该插件都能比较好地渲染解释,值得深入研究学习。

Nextcloud一个错误的解决

在群晖的Docker中安装了Nextcloud,在设置的概览中出现以下错误提示:

对这个问题解决网络上有各种方法,进行了各种尝试都不起作用,重新参考官方文档,发现里面已经说的非常清楚,可能很多人和我一样英文不太好,没有读懂其中的要求。

意思是在网站访问时需要正确的访问路径,如https://example.com/.well-known/carddav,此时需要将客户端重定向到正确的端点,因此需要在/remote.php/dav前面加上正确的路径URL。

如果是用apache安装的服务器,需要配置安装重定向模块,如果是Nginx安装的web服务器,需要参考nginx的设置。

原始的.htaccess文件是这样的:

修改成如下,问题解决:

因此,当在内网访问时,可能不会提示以上错误,因为系统可以定向到正确的地址,但在外网访问时需要明确的绝对地址才能到达nextcloud的安装服务。

nextcloud安装后可能会出现各种问题,网络上有各种教程,但怎么解决很多是一种感觉或猜测,其实官方文档几乎都有解决方案,按照指导去配置基本都能很快解决。

在VScode的中远程内网浏览网页

如何远程安全连接进内网之中处理一些网络管理等问题,有时候也是一个比较实在的需求,尤其是路由器等,可能没有命令方式,需要使用web方式连接,就会比较麻烦。

简单的方式是开启路由的web管理,通过端口映射等方式在外网进行连接,但这样给不仅多开了一个端口,而且安全性方面增加了压力。

如果我们有一个远程的vscode服务器在运行,则可以在该服务器中安装浏览器扩展,利用相关插件完成内网的连接。vscode服务器可以是单独的机器,也可以是虚拟机或docker容器,只要它已经与外网进行连接即可。

在vscode中远程浏览,本质是vscode服务器必须安装浏览器引擎,远程的显示则通过插件把浏览内容展示在远端的浏览器中,因此需要在服务器中安装浏览器核心和用于远端显示的插件。

下面是运行在docker容器中的code-server中部署相关功能,系统为Debian11,其它服务器实现原理类似。

1、在code-server中安装Chrome

1.1 下载Chrome的deb包

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb

1.2 安装Chrome包

ssh进入服务器后台

sudo apt install ./google-chrome-stable_current_amd64.deb

此时,系统会安装Chrome及必须的依赖,安装文件较大。

2、安装Browser Preview插件

进入vscode的扩展商店,搜索Browser Preview,并安装。

3、通过Browser Preview进入内网

由于Browser Preview运行时,是直接调用远程服务器上的浏览器,因此在地址栏输入局域网地址,将会直接在内网运行。

vscode本身是一个很好的开发工具,通过文本预览、浏览器等插件使用能间接地,以webUI的方式很方便地处理远程系统上的工作。

这个方法可以较轻便地进行一些内网的管理工作,但页面显示效果不理想、多窗口和多页面的显示直接分割显示器窗口,体验很难与VNC等方式相比,只能作为一个简便工具使用。