一、Notable简介
Notable是一款开源的跨平台Markdown编辑器,支持Linux、MacOS、Windows以及国产操作系统等多种主流操作系统。它以其高颜值和强大的功能,成为了许多用户的首选工具。
主要特性
- 实时预览:
Notable提供了实时预览功能,用户在编辑Markdown文件时可以即时看到效果,极大地提升了编辑效率和准确性。 - 所见即所得:
Notable的所见即所得编辑模式让用户能够直接在编辑器中看到最终输出的样子,减少了反复切换预览和编辑模式的麻烦。 - GitHub Flavored Markdown支持:
如果你是GitHub用户,Notable完美支持GitHub Flavored Markdown(GFM),可以直接使用GFM的所有语法,包括表情符号、任务列表等,无需额外配置。 - 自定义CSS样式:
用户可以使用自己的CSS样式来调整Markdown文档的外观,如调整字体、颜色或添加特殊布局。 - 标签和分类:
Notable允许用户为笔记添加标签和分类,方便笔记的组织和管理。 - 强大的搜索功能:
支持全文搜索、标签搜索、分类搜索等多种搜索方式,帮助用户快速找到需要的笔记。 - 安全性:
内容都存储在本地,每个笔记都可单独加密,确保数据安全。 - 隐私性:
提供方便的搜索功能,但不依赖联网,确保用户隐私。
开发背景和开发者信息
Notable由英国的全栈开发大佬Fabio Spampinato开发。他因为找不到适合自己的笔记软件,于是自己动手开发了Notable。Notable不仅支持Markdown,还支持无限创建笔记、导入Evernote等热门笔记软件的文件,并且界面简洁、功能丰富。
二、Notable的常见的Markdown语法
Notable 是一个开源的 Markdown 笔记应用,它支持标准的 Markdown 语法。以下是一些常用的 Markdown 语法:
-
标题:
#
一级标题##
二级标题###
三级标题- 以此类推,直到
######
六级标题
-
粗体:
**文本**
或_文本_
产生粗体文本
-
斜体:
*文本*
或_文本_
产生斜体文本(如果只有一个星号或下划线,则只产生斜体)
-
删除线:
~~文本~~
产生删除线文本
-
无序列表:
- 以
-
,*
, 或+
开头,后面跟一个空格,创建无序列表项
- 以
-
有序列表:
- 以数字加点开头,后面跟一个空格,创建有序列表项
-
链接:
[显示文本](链接地址)
创建一个超链接
-
图片:
![替代文本](图片链接)
插入图片
-
引用:
>
开头,后面跟一个空格,创建引用文本
-
代码:
- 单行代码:
`代码`
- 多行代码块:
```代码```
- 单行代码:
-
表格:
- 使用
|
和-
来创建表格
| 表头1 | 表头2 | 表头3 | | :--- | :---: | ---: | | 单元格居左 | 单元格居中 | 单元格居右 |
- 使用
表格实例:
居左文本1 | 居中文本2 | 居右文本3 |
---|---|---|
文本1 | 文本2 | 文本3 |
文本4 | 文本5 | 文本6 |
-
分隔线:
- 三个或更多的
*
,-
, 或_
可以创建分隔线
*** 或 ---
- 三个或更多的
-
转义字符:
\
用于转义特殊字符,例如\*
显示星号而不是创建斜体
-
任务列表:
- [x]
已完成的任务- [ ]
未完成的任务
-
内嵌HTML:
- 可以直接使用HTML标签,Markdown会忽略不认识的标签
这些是Markdown的基本语法,Notable 应用中可能还支持一些额外的功能或自定义的语法,具体可以查看 Notable 的官方文档或帮助页面。
三、Notable下载:
官网下载
github下载
四、自己代码高亮显示测试:编写shell脚本批量转换图片为webp格式
在Linux系统中,使用ImageMagick可以图片格式转换,其中最常用的是通过命令行工具进行。
ImageMagick是一个非常强大的图像处理工具集,它包含了许多用于图像转换的命令。
安装ImageMagick(如果尚未安装):
sudo apt-get install imagemagick # 对于基于Debian的系统
验证是否安装成功:
尝试运行ImageMagick提供的一些常用命令,比如:
convert --version
如果convert命令可用,它将返回版本信息。
可以编写shell脚本批量转换图片为webp格式
1.shell脚本文件名:
picToWebp_v1.2.sh
#!/bin/bash
#脚本功能:把常用的图片格式(png、jpg、jpeg、tiff)批量转换为webp格式#函数功能:使用了*通配符来检查字符串中是否有空格。如果字符串包含空格,contains_space函数将返回真(true),否则返回假(false)。
function contains_space() {[[ $1 = *\ * ]]
}#函数功能:把空格全部替换为'_'下划线"
function space2underline(){local file_name_old=$1# 使用contains_space函数判断文件名中是否含有空格if contains_space "$file_name_old"; thenfile_name_new="${file_name_old// /_}"mv "$file_name_old" "$file_name_new";echo "$file_name_new"elseecho "$file_name_old"fi
}#函数功能:主函数
function main(){echo "温馨提示:仅支持常见的图片格式(png、jpg、jpeg、tiff)才可以转换为webp格式,其他文件类型不支持!"# 创建新文件夹new_folder="webp"# 检查文件夹是否存在if [ ! -d "$new_folder" ]; then# 文件夹不存在,创建文件夹mkdir "$new_folder"fi#for file_name in `ls *.png *.jpg *.jpeg *.tiff`;dofor file_name in *;do#echo "文件'${file_name}'"if [ "png" == "${file_name##*.}" ];thenfile_name=$(space2underline "$file_name")#echo "$file_name"(convert $file_name `echo $new_folder/${file_name//.png/.webp}`) && (echo "${file_name}已成功转为webp格式") || (echo "${file_name}转换失败")elif [ "jpg" == "${file_name##*.}" ];thenfile_name=$(space2underline "$file_name")#echo "$file_name"(convert $file_name `echo $new_folder/${file_name//.jpg/.webp}`) && (echo "${file_name}已成功转为webp格式") || (echo "${file_name}转换失败")elif [ "jpeg" == "${file_name##*.}" ];thenfile_name=$(space2underline "$file_name")#echo "$file_name"(convert $file_name `echo $new_folder/${file_name//.jpeg/.webp}`) && (echo "${file_name}已成功转为webp格式") || (echo "${file_name}转换失败")elif [ "tiff" == "${file_name##*.}" ];thenfile_name=$(space2underline "$file_name")#echo "$file_name"(convert $file_name `echo $new_folder/${file_name//.tiff/.webp}`) && (echo "${file_name}已成功转为webp格式") || (echo "${file_name}转换失败")#else#echo "仅支持常见的图片格式(png、jpg、jpeg、tiff)才可以转换为webp格式,其他文件'${file_name}'不支持!"fi
done
}# ---------------执行主函数-------------------
main
2.使用方法:
首先把图片放到与picToWebp_v1.2.sh文件同级目录下。
1).赋予shell脚本文件执行权限
chmod +x picToWebp_v1.2.sh
2).运行shell脚本
./picToWebp_v1.2.sh