alfred的workflow快捷键登录校园网,自制图床

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/C_J33/article/details/78786222

关于alfred

之前也一直使用被称为mac神器到alfred。直到今天才发现我用的是低版本,功能非常基础。而高版本所支持的workflow才是真的称为神器。alfred下载猛戳这里这里。至于powerpack的一些功能,可以选择购买使用或者…(滑稽脸)

workflow

workflow就是让alfred直接执行脚本,包括shell、python、php等,直接那两个例子来解释,就知道他有多方便了。更多操作查看我的github仓库

登录校园网(使用python脚本)

在之前用旧版本的alfred登录校园网所用的方法是在feature添加web url,输入p打开p.nju.edu.cn。然后点击输入浏览器记住的密码登陆。相比打开浏览器页面已经快捷很多。但是如果使用workflow**直接快捷键‘opt+p’可以登录校园网,登录成功后有提示音和notification;‘opt+o’可以退出登录校园网,退出成功后有提示音和notification;** 步骤如下:

  1. preference中点击workflow,按照如图选择keyword to script

    alfred1.png

  2. 输入关键字和描述,保存

    alfred2.png

  3. 右键创建script

    alfred3.png

  4. 输入执行的脚本并保存

# -*- coding:utf-8 -*-

import json
import urllib
import urllib2


def login():
    url = 'http://p.nju.edu.cn/portal_io/login'
    username = 'xxxx'  # 可将密码等保存至文件
    password = 'xxxxx'
    data = {'username': username, 'password': password}
    postdata = urllib.urlencode(data).encode('utf-8')
    try:
        request = urllib2.Request(url, postdata)
        response = urllib2.urlopen(request)
        res = json.loads(response.read().decode('utf-8'))
        # print res["reply_code"]
    except Exception as e:
        print(e)


if __name__ == '__main__':
    login()

快捷键打开alfred输入框,输入你的关键字,回车。就连上了校园网,很方便。


workflow让github变成最快捷的图床

写markdown的都知道,图片需要url,如果需要本地一张图片显示要先上传,获取url,这就显得麻烦。能不能有个软件,选中图片,按个快捷键,就可以上传图片拿到图片的url呢? workflow可以做到。 (本来打算学一学写个mac应用的,没想到workflow一个shell脚本就可以了)

步骤如下:

  1. 新建如下工作流。可根据自己需要更改。需要注意的是hotkey里argument选择selection in macOS,快捷键可以自己定义

  2. 编写shell脚本

    
    #!/bin/bash
    
    t=$(date +%s)
    cp '{query}' /Users/Mark.W/Documents/AboutMyself/picBed/Screenshot${t}.png
    cd /Users/Mark.W/Documents/AboutMyself/ 
    git add . > /dev/null
    git commit -m add_upload_picture_${t} > /dev/null
    git push origin master > /dev/null
    echo http://raw.githubusercontent.com/IMWYY/AboutMyself/master/picBed/Screenshot${t}.png

    这里{query}是选中文件的路径,先将其拷贝至git本地仓库,然后再用git命令提交即可。这里有几个注意点:

    1. {query}要加上引号,以防遇到文件名里有空格,cp命令会将其拆分当成命令参数。
    2. git命令都有命令回显,而我需要到clipboard的内容只需要是图片url,为了防止干扰,命令后加上> /dev/null回显信息定位到“黑洞”。
    3. git上图片链接地址需要加上raw。我这里用的仓库是AboutMyself
    4. 使用git命令需要配置好git本地的一些参数,ssh key,账号密码之类

这样既可以方便写markdown,还能让你的github经常提交变得绿油油。。岂不美滋滋

部署hexo博客(使用shell脚本)

一般部署hexo博客要输入三条命令hexo clean hexo g hexo d。每次都要打开终端输入三个命令真的很麻烦,进阶方法是将命令写成shell脚本,打开终端执行./xxx.sh。当然也可以利用alfred,连终端都不用自己打开。

1 2 3步骤和上个例子一样,不过第四步选择terminal command

alfred4.png

然后输入脚本

cd 你的博客本地目录 && hexo clean && hexo g && hexo d

写完博客,快捷键打开alfred输入框,输入你定义的关键字,回车。部署完成。
同理也可以将博客创建的几条命令放在shell脚本用workflow打开。

问题

照理说命令应该选择script,但是不奏效,debug(workflow页面有个小虫子,就是debug)发现找不到hexo命令,我明明安装的是全局hexo命令。所以选择terminal command。找到原因了再来改。

展开阅读全文

没有更多推荐了,返回首页