根据tampermonkey利用@require调用本地脚本的方法,比如我电脑上保存了Tampermonkey脚本a.user.js和它调用的a.js,

想在Vim编辑这两个文件时,都能一键打开网页里的a脚本,网址格式是:chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/options.html#nav=11bdfe33-99f5-45b7-926d-b8c74a1f7db2+editor

同个用户,=前的内容都是相同的,

同个脚本,不同电脑,nav=后面的内容也是不同的,所以在js文件的插件里,我定义了如下脚本实现F3一键打开网址:

nnoremap <buffer><F3> :<C-u>w<CR>:call <SID>JS_runTampermonkey(expand('%:r'))<CR>

function! s:JS_runTampermonkey(file)
"删除Tampermonkey脚本文件名的.user,使得a.user.js和a.js文件的fn都为a
let fn = substitute(a:file, '\.user$', '', '')
"保存a,b,c脚本在家里和单位的名称,第1个是家里,第2个是单位
let names = {
\ 'a' : ['11bdfe33-99f5-45b7-926d-b8c74a1f7db2', '9bcd10d7-470b-4467-a2e6-9f56f652d31a'],
\ 'b' : ['75154d0e-752a-424c-afbe-4674ab6bd063', '44106a55-5e44-419e-aca7-461441358985'],
\ 'c': ['83192010-644c-4a1b-bb9b-c000f2955f04', '9c91b53c-8121-4957-bc75-79abb325a5a1']
\}
let pc = hostname() != 'HOME-PC' "家里电脑为序号0,单位为序号1
if has_key(names, fn) "如果在names定义了,就用浏览器打开网址
execute 'silent !start /b d:\soft\Chrome\Chrome.exe '
\ . fnameescape('chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/options.html#nav=')
\ . names[fn][pc]
endif
endfunction

  

Vim直接打开Tampermonkey网址的方法。的更多相关文章

  1. vim(vi)常用操作及记忆方法

    vi(vim)可以说是linux中用得最多的工具了,不管你配置服务也好,写脚本也好,总会用到它.但是,vim作为一个“纯字符”模式下的工具,它的操作和WINDOWS中的文本编辑工具相比多少有些复杂.这 ...

  2. (转)vim(vi)常用操作及记忆方法

    vim(vi)常用操作及记忆方法 原文:https://www.cnblogs.com/doseoer/p/6241443.html vi(vim)可以说是linux中用得最多的工具了,不管你配置服务 ...

  3. Myeclipse下JSP打开报空指针异常解决方法。

    Myeclipse下JSP打开报空指针异常解决方法 一.运行JSP文件就出错 静态的JSP页面访问时候正常,只要是牵涉到数据库的页面就出错,出错见下图. 出现这种情况让我调试了一天,各种断点,各种改代 ...

  4. Visual Studio 2008打开vs2010解决方案的方法

    一个朋友遇到了个问题:用visual studio 2008软件,无法打开一个asp.net网站的sln解决方案.如下图,原因是此解决方案由vs2010生成的,必须由vs2010运行程序打开. 这样一 ...

  5. INNO 补丁制作技术, 打开 INNO 补丁制作方法的第一页

    INNO 补丁制作技术, 打开 INNO 补丁制作方法的第一页 作者:xin 日期:2005-09-23 字体大小: 小 中 大   VPatch 在 INNO 中的应用. VPatch 属于专为NS ...

  6. js 自己项目中几种打开或弹出页面的方法

    自己项目中,几种打开或弹出页面的方法(部分需要特定环境下) var blnTop = false;//是否在顶层显示 ///动态生成模态窗体(通过字符串生成) ///strModalId:模态窗体ID ...

  7. windows运行打开服务命令的方法 :

    windows运行打开服务命令的方法 : 在开始->运行,输入以下命令 1. gpedit.msc-----组策略 2. sndrec32-------录音机 3. Nslookup------ ...

  8. vim 在 cmdline 内粘贴的方法

    vim 在 cmdline 内粘贴的方法: 先按下 Ctrl-r ,然后选择从哪个剪贴板上粘贴 0 (yank register), 1 to 9 (shifting delete registers ...

  9. android intent打开各种文件的方法

    android intent打开各种文件的方法   1./**  * 检测是否安装了某个软件  *   * @param pkgName "com.bill99.kuaishua" ...

随机推荐

  1. 字典序的第K小数字

    今天zyb参加一场面试,面试官听说zyb是ACMer之后立马抛出了一道算法题给zyb:有一个序列,是1到n的一种排列,排列的顺序是字典序小的在前,那么第k个数字是什么?例如n=15,k=7, 排列顺序 ...

  2. SPOJ - FREQ2 莫队 / n^1.5logn爆炸

    题意:给定\(a[1...n]\)和\(Q\)次询问,每次统计\([L,R]\)范围内出现频率最高的数的次数 想法没啥好说的,分别统计该数出现的次数和次数出现的次数,然后莫队暴力 注意本题时间卡的很紧 ...

  3. redis cluster 集群拓展

    redis cluster 集群拓展 准备工作 举例:添加2个节点(1主7006节点,1从7007节点) 在/home/redis-cluster下生成conf和data目标,并生成配置信息 `; d ...

  4. SQL异常捕获

    直接上代码: GO BEGIN TRY DECLARE @res INT SET @res=1/0 PRINT 'no error' END TRY BEGIN CATCH PRINT 'Error ...

  5. VUE中toast的使用与开发

    在这篇文章中介绍了toast是什么,这篇文章主要介绍toast的开发与使用. 开发 Vuejs很流行,并且官方也给出了路由插件vue-router.数据管理插件vuex,但是我们仅仅停留在了使用的阶段 ...

  6. 把数据库内容显示在listview上

    数据库操作很简单,但用户想看见的是数据库里的内容,那么让数据库内容显示在屏幕上呢,下面做个简单演示,百变不离其中,先看步骤: 把数据库的数据显示至屏幕1. 任意插入一些数据 定义Javabean:Pe ...

  7. linux文件夹权限问题

    linux下 ls 某文件夹需要文件夹有 r 读权限. cd 某文件夹 需要文件夹有 x 运行权限 参考: http://www.linuxidc.com/Linux/2016-11/136959.h ...

  8. jqgrid 增删改页面快速构建

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InvitationRout ...

  9. Oracle 过程中变量赋值

    create or replace function get_sal1(id employees.employee_id%type) return number is sal employees.sa ...

  10. jdbc封装DBUtil

    1.编写实体类User public class User { private Integer id; private String username; private Integer age; pr ...