如何在terminal中使用Joplin并像vim一样移动?

2023-05-16

如何在terminal中使用Joplin并像vim一样移动?

原文地址: https://cfanzp.com/joplin-terminal/

安装

mac 安装方法

brew install node
NPM_CONFIG_PREFIX=~/.joplin-bin npm install -g joplin
sudo ln -s ~/.joplin-bin/bin/joplin /usr/bin/joplin
[zp@localhost bin]$ sudo ln -s ~/.joplin-bin/bin/joplin /usr/bin/joplin
ln: /usr/bin/joplin: Read-only file system
sudo ln -s ~/.joplin-bin/bin/joplin /usr/local/bin/joplin

ubuntu 安装方法

#Important: First, install Node 12+.
NPM_CONFIG_PREFIX=~/.joplin-bin npm install -g joplin
sudo ln -s ~/.joplin-bin/bin/joplin /usr/bin/joplin

我安装的时候nodejs版本是:v10.19.0,建议按官方要求使用Node 12+

进入

joplin

配置文件同步

同步方式建议用文件同步,尝试了用坚果云的WebDav同步效果不是很好,手机可以采用WebDav,电脑还是用文件同步更稳定些。

:config sync.target 2
:config sync.2.path /home/cfanzp/jgy/joplin

配置将会被保存在下面文件中

~/.config/joplin/settings.json

快捷键配置

~/.config/joplin/keymap.json

快捷键配置demo keymap.json

[
  { "keys": [":"], "type": "function", "command": "enter_command_line_mode" },
  { "keys": ["TAB"], "type": "function", "command": "focus_next" },
  { "keys": ["SHIFT_TAB"], "type": "function", "command": "focus_previous" },
  { "keys": ["UP"], "type": "function", "command": "move_up" },
  { "keys": ["DOWN"], "type": "function", "command": "move_down" },
  { "keys": ["PAGE_UP"], "type": "function", "command": "page_up" },
  { "keys": ["PAGE_DOWN"], "type": "function", "command": "page_down" },
  { "keys": ["ENTER"], "type": "function", "command": "activate" },
  { "keys": ["DELETE", "BACKSPACE"], "type": "function", "command": "delete" },
  { "keys": [" "], "command": "todo toggle $n" },
  { "keys": ["n"], "type": "function", "command": "next_link" },
  { "keys": ["b"], "type": "function", "command": "previous_link" },
  { "keys": ["o"], "type": "function", "command": "open_link" },
  { "keys": ["tc"], "type": "function", "command": "toggle_console" },
  { "keys": ["tm"], "type": "function", "command": "toggle_metadata" },
  { "keys": ["/"], "type": "prompt", "command": "search \"\"", "cursorPosition": -2 },
  { "keys": ["mn"], "type": "prompt", "command": "mknote \"\"", "cursorPosition": -2 },
  { "keys": ["mt"], "type": "prompt", "command": "mktodo \"\"", "cursorPosition": -2 },
  { "keys": ["mb"], "type": "prompt", "command": "mkbook \"\"", "cursorPosition": -2 },
  { "keys": ["yn"], "type": "prompt", "command": "cp $n \"\"", "cursorPosition": -2 },
  { "keys": ["dn"], "type": "prompt", "command": "mv $n \"\"", "cursorPosition": -2 }
]

vim快捷键配置demo keymap.json

[
  { "keys": [":"], "type": "function", "command": "enter_command_line_mode" },
  { "keys": ["TAB","l"], "type": "function", "command": "focus_next" },
  { "keys": ["SHIFT_TAB","h"], "type": "function", "command": "focus_previous" },
  { "keys": ["UP","k"], "type": "function", "command": "move_up" },
  { "keys": ["DOWN","j"], "type": "function", "command": "move_down" },
  { "keys": ["PAGE_UP","{"], "type": "function", "command": "page_up" },
  { "keys": ["PAGE_DOWN","}"], "type": "function", "command": "page_down" },
  { "keys": ["ENTER"], "type": "function", "command": "activate" },
  { "keys": ["DELETE", "BACKSPACE"], "type": "function", "command": "delete" },
  { "keys": [" "], "command": "todo toggle $n" },
  { "keys": ["tc"], "type": "function", "command": "toggle_console" },
  { "keys": ["tm"], "type": "function", "command": "toggle_metadata" },
  { "keys": ["/"], "type": "prompt", "command": "search \"\"", "cursorPosition": -2 },
  { "keys": ["mn"], "type": "prompt", "command": "mknote \"\"", "cursorPosition": -2 },
  { "keys": ["mt"], "type": "prompt", "command": "mktodo \"\"", "cursorPosition": -2 },
  { "keys": ["mb"], "type": "prompt", "command": "mkbook \"\"", "cursorPosition": -2 },
  { "keys": ["yn"], "type": "prompt", "command": "cp $n \"\"", "cursorPosition": -2 },
  { "keys": ["dn"], "type": "prompt", "command": "mv $n \"\"", "cursorPosition": -2 }
]

vim快捷键添加e进入Vim编辑

{ "keys": ["ENTER","e"], "type": "function", "command": "activate" },

vim快捷键添加q退出

 { "keys": ["dn"], "type": "prompt", "command": "exit", "cursorPosition": -1 }

主要快捷键

keynotecmd
hjkl移动-
(SPACE)完成todo项目:todo toggle $n
/搜索:search
mnmake note 创建笔记:mknote
mtmake todo 创建待办:mktodo
mbmake book 创建笔记本:mkbook
yncp当前项目cp $n
dn删除当前项目:mv $n
q退出:exit

配置默认编辑器为Vim

在命令行中执行:

joplin config editor "/usr/bin/vim"

或在jopliin内部命令行模式

:config editor "/usr/bin/vim"

参考

  • https://joplinapp.org/terminal
  • https://zhuanlan.zhihu.com/p/107334649
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在terminal中使用Joplin并像vim一样移动? 的相关文章

  • SSRF基础原理(Server-side request forgery)

    SSRF基础原理 Server side request forgery 文章目录 SSRF基础原理 Server side request forgery 什么是 服务器端请求伪造 pikachu 案例 curl file get con
  • python 写的一些ctf脚本

    python 写的一些ctf题脚本记录 文章目录 python 写的一些ctf题脚本记录 misc 16进制 凯撒 4进制 置换密码 Unicode web计算 rsa base64实现 sql注入布尔 gif图片帧拼接 misc span
  • PwnTheBox(web篇)简单题

    PwnTheBox web篇 简单题 文章结构生成 span class token comment id app div section main div 1 div div 6 div div div p title span span
  • vscode神级插件---Open PHP/HTML/JS In Browser

    vscode神级插件 Open PHP HTML JS In Browser 快速在浏览器中解析html php地址 效果 选择Open PHP HTML JS In Browser后会在浏览器中自动解析相应的地址 设置方法 安装 Open
  • linux POSIX线程 C程序案例

    创建一个用户级的线程 实现在线程中更改进程 主线程 中的数据并输出验证修改结果 span class token macro property span class token directive hash span span class
  • Actuator Information Leakage

    Actuator Information Leakage Spring Boot lt 1 5 默认未授权访问所有端点 Spring Boot gt 1 5 默认只允许访问 health和 info端点 但是此安全性通常被应用程序开发人员禁
  • ubuntu20.04如何安装i3wm?

    ubuntu20 04如何安装i3wm xff1f sudo apt install i3
  • Actuators + jolokia

    Actuators jolokia Jolokia造成的XXE漏洞 首先我们查看我们当前环境http x x x x jolokia list地址 是否存在reloadByURL这个方法 这个方法是造成RCE的关键 因为logback组件提
  • 红队常用命令

    原文链接 https github com safe6Sec command command 收集渗透中会用到的常用命令 建议直接 Ctrl F 查找 java命令执行 如下编码网站 https ares x com tools runti
  • 最新2023年Kali Purple,紫色的带防御kali,简介和安装(超详细)

    文章目录 一 xff0c 什么是kali Purle xff08 卡利紫 xff09 二 xff0c 如何安装kali Purple xff08 有步骤没图片直接是默认 xff09 1 xff0c 复制它的下载链接到迅雷可以让你下镜像变得更
  • 网络协议分层--OSI七层模型, TCP/IP五层(四层)模型

    目录 什么是协议分层 分层的作用 OSI七层模型 第一层 物理层 第二层 数据链路层 第三层 网络层 第四层 传输层 第五层 会话层 第六层 表示层 第七层 应用层 比喻举例 TCP IP 五层 或四层 模型 应用层 传输层 网络层 数据链
  • 蓝桥杯练习-3.6

    蓝桥杯练习 3 6 代码练习 完美的代价 问题描述 回文串 xff0c 是一种特殊的字符串 xff0c 它从左往右读和从右往左读是一样的 小龙龙认为回文串才是完美的 现在给你一个串 xff0c 它不一定是回文的 xff0c 请你计算最少的交
  • Linux子系统下安装可视化桌面以及jupyternb的一系列问题

    wsl子系统下安装可视化桌面的一系列问题 问题引发 xff1a 由于想在jupyter notebook 上运行OpenMOC xff0c 这样就能看到每一步代码运行后生成的效果 xff0c 但是 xff0c 本机上只安装了windows1
  • C语言 -- enum 枚举的使用

    一 枚举的定义 枚举是C语言的一种基本的数据类型 enum 枚举名 枚举元素1 枚举元素2 我们以星期举例 enum DAY MON 61 1 TUE WED THU FRI SAT SUN 如果没有赋值 xff0c 第一个枚举成员的默认值
  • arduino初学蓝牙模块HC-06

    先了解HC 06模块 xff1a VCC连接正极 有些是3 3V 有些是5V xff09 RXD 数据的接收端 连接arduino的TXD 可以连接数字引脚 TXD 数据的发送端 连接arduino的RXD 可以连接数字引脚 GND 连接负
  • Java实现三角形打印

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 一 java如何打印各种三角形二 使用步骤1 代码示例 总结 提示 xff1a 以下是本篇文章正文内容 xff0c 下面案例可供
  • Vue3 中使用 “vue-axios“

    文章目录 前言一 安装vue axios二 使用方法总结 前言 我是在cli4 5 x 43 vue3环境下做的 所以代码看起来可能有些离谱 这是一个基于vue并进行了轻度封装的axios包 里面整合了vue环境下会用到的一些axios相关
  • 给项目日志加上traceid

    给日志加上traceid traceid是什么 xff1f 这里所说的traceid是指在服务端收到客户端请求后到服务端返回给客户端结果的过程中给没一条日志添加一个相同的traceid来跟踪请求到返回的整个过程 为什么要给服务的日志加上tr
  • 小白都能看懂的C语言入门教程

    文章目录 C语言入门教程1 第一个C语言程序HelloWorld2 C语言的数据类型3 常量变量的使用4 自定义标识符 define5 枚举的使用6 字符串和转义字符7 判断和循环8 函数9 数组的使用10 操作符的使用11 结构体12 指
  • HTML5:超链接基础知识

    超链接的概念 超链接是指从一个网页指向一个目标的连接关系 xff0c 这个目标可以是另一个网页 xff0c 也可以是相同网页上的不同位置 xff0c 还可以是一个图片 xff0c 一个电子邮件编辑器 xff0c 一个音频或视频文件 xff0

随机推荐