生信人写程序2. Editplus添加Perl, Shell, R, markdown模板和语法高亮

前言

“工欲善其事必先利其器”,生信工程师每天写代码、搭流程,而且要使用至少三门编程语言,没有个好集成开发环境(IDE,Integrated Development Environment)那怎么行?

本人使用过vim, editplus, ultraedit, notepad++, sublime。感觉在多语言支持、直接远程编辑脚本、启动速度等方面还是editplus用着比较舒服,适合我的个人习惯。

Editplus 下载和安装

最好官网下载最新版4.3,喜欢的话正版才30$,关键是不注册也不影响使用。 https://www.editplus.com/download.html 有32/64位版,建议安装64位版epp430_64bit.exe,还有中文版(不建议,全是老版本),英语拼写检查(安装了没看到效果);

先安装完成后,打开,会出现配置设置、语法文件位置选择,如下图 建议修改到自己的目录,方便管理和备份,如改为C:\Users\woodc\Desktop\home\soft\editplus

如果不想看到试用字样,百度可以找到很多注册机/注册码,很容易激活。

添加Perl语言模板

该程序对Perl语法默认支持已经非常好了,只是缺少个生信专用模板,参考我的上篇文章 生信人写程序1. Perl语言模板及配置

右键另存下载perl模板文件直接单击可能会报错,因为Perl的pl文件是也属于网页的一种,会被运行,而内容又不是网页,所以报错。

主要操作如下:将《Perl语言模板》原文中代码复制到editplus中新建的空白文件,点保存; 第一种情况:如果刚才设置了新的模板目录,请选择你自己设置的目录,替换template.pl。 第二种情况:没有更改配件文件目录,默认的保存位置可替换template.pl即可。 如果下次使用新建Perl不能自动加载模板,可以尝试将模板代码保存为template.pl在任何位置,选择Tools - Preference - template — Perl,更改template.pl文件位置为刚才保存的模板template.pl文件即可。

以后点新建- perl会自己加载我们配置的模板开使写新程序;其实我们更多是找写过相近的程序再修改,这个过程是逐渐积累的,领域和用途不同,自己的常用功能也是很个性化的。

添加Shell语言支持

https://www.editplus.com/others.html 选择* Shell stx - 肖俊斌 (2011-06-21)下载,解压后有shell.stx语法文件放在之前设置的目录;也可直接右键点我下载shell语法 再选择 Tools — Preference — Setting & syntax, Add - 输入 “Shell” — OK, 文件扩展添”sh”,语法文件选择下载的shell.stx;点OK;

Shell写作模板

主要包括命令行参数解析、默认参数设置、程序功能描述及帮助文档等

右键另存下载Shell模板文件

#!/bin/bash
set -e

# 设置程序参数的缺省值,少用参数即可运行
# Default parameter
input=input.txt
output=output.txt
database=database.txt
execute='TRUE'

# 程序功能描述,每次必改程序名、版本、时间等;版本更新要记录清楚,一般可用-h/-?来显示这部分
# Function for script description and usage
usage()
{
cat <<EOF >&2
Usage:
-------------------------------------------------------------------------------
Filename:    template.sh
Revision:    1.0
Date:        2017/6/24
Author:      Yong-Xin Liu
Email:       yxliu@genetics.ac.cn
Website:     http://bailab.genetics.ac.cn/
Description: This script is solve parameter read and default
Notes:       Function of this script
-------------------------------------------------------------------------------
Copyright:   2017 (c) Yong-Xin Liu
License:     GPL
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License 
as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty 
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
If any changes are made to this script, please mail me a copy of the changes
-------------------------------------------------------------------------------
Version 1.0 2017/6/24

# 输入输出文件格式和示例,非常有用,不知道格式怎么准备文件呀
# Input files: input.txt, can inclue many file

# 1. input.txt, design of expriment
SampleID    BarcodeSequence    group    gene    batch    description
WT.1    TAGCTT    WT    ggps9.10    2    double mutant of ggps9-ggps10, cause A/B down
WT.2    GGCTAC    WT    ggps9.10    2    double mutant of ggps9-ggps10, cause A/B down
WT.3    CGCGCG    WT    ggps9.10    2    double mutant of ggps9-ggps10, cause A/B down

# 2. database.txt, annotation of gene
ID    description
AT3G48300    Transcript factor

# Output file
1. Annotated samples & DE genes
Samples    ID    description
Wt    AT3G48300    Transcript factor

2. Volcano plot: vol_otu_SampleAvsSampleB.pdf

# 参数描述,写清功能的缺省值
OPTIONS:
    -d database file, default database.txt
    -i input file, recommend must give
    -o output file or output directory, default output.txt
    -h/? show help of script
Example:
    template.sh -i input.txt -d database.txt -o result.txt
EOF
}

# 解释命令行参数,是不是很面熟,其实是调用了perl语言的getopts包,
# Analysis parameter
while getopts "d:h:i:o:" OPTION
do
    case $OPTION in
        d)
            database=$OPTARG
            ;;
        h)
            usage
            exit 1
            ;;
        i)
            input=$OPTARG
            ;;
        o)
            output=$OPTARG
            ;;
        ?)
            usage
            exit 1
            ;;
    esac
done

将以上代码保存为template.sh,点击Tools — Preference — Template — Add 命名为Shell,选择template.sh文件,OK。 以后点New file, 选择shell即自动加载模板;

R语言的语法支持

官网下载* R programming language stx - Wei Wang (2007-05-15),或点我下载R语法文件 Tools — Preference — Setting & syntax, Add - 输入 “R” — OK, 文件扩展添”r,R,Rmd”,语法文件选择下载r的stx;点OK;

现在打开个R文件试试,已经语法高亮了 如果有Rstudio server的小伙伴,建议直接用网页版Rstudio在服务器上调式;

远程编辑脚本

  1. 先添加远程打开和保存工具栏按钮 Tools - Preference - Tools bar ; 把左侧的Open Remote, Save as Remote 选中按右箭头添加右侧;再选择edit菜单的Line Comment, Line Uncoment添加右侧;把右侧的远程打开和保存托至顶部,常用在前面好找;点OK确定配置
  1. 连接服务器打开文件编辑 点Open Remote按扭,点Setting设置远程服务器信息,添加服务器名称、IP、账号和密码,再点Advance中选择Encryption为sftp,OK再OK;即可正常连接服务器并浏览文件,我们选择编码Encoding为UTF-8,再打开shell脚本;
  1. 编辑吧,保存自动为远程保存,可以随时保存后马上运行调试,非常方便;
  2. 下次再打开已经使用过的文件,记得文件-最近打开文件选择更方便。

本文分享自微信公众号 - 生信宝典(Bio_data)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-07-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据派THU

【独家】手把手教线性回归分析(附R语言实例)

本文长度为8619字,建议阅读15分钟 本文为你介绍线性回归分析。 通常在现实应用中,我们需要去理解一个变量是如何被一些其他变量所决定的。 回答这样的问题,需要...

3.9K100
来自专栏量化投资与机器学习

【原创精品】使用R语言gbm包实现梯度提升算法

原创推文预告(绿色为已发布,点击标题即可阅读) ● 随机森林在因子选择上的应用基于Matlab ● 择时策略:在一天的何时进行交易 ● 主题模型 - LD...

62270
来自专栏数据派THU

独家 | 6步教你用R语言制作动图

原文标题:How to create animated GIF images for data visualization using gganimate (i...

48170
来自专栏数据派THU

独家 | 哈佛教授公开R语言源码,教你用R制作gif动图

原文标题:Code for my educational gifs 作者:Rafael Irizarry 翻译:贾琳 本文长度为1800字,建议阅读4分钟 Ra...

23780
来自专栏量化投资与机器学习

HMM模型在量化交易中的应用(R语言版)

? 马尔科夫性 如果一个过程的“将来”仅依赖“现在”而不依赖“过去”,则此过程具有马尔可夫性,或称此过程为马尔可夫过程。 函数形式:X(t+1) = f( X...

55280
来自专栏量化投资与机器学习

【R机器学习】一种基于K近邻法的集成学习算法概要

编辑部 大家期待已久的R语言版块终于和你们见面了。本期是我们R语言编辑部Chen 编辑的文章。希望大家有所收获! 1、引言 构建量化策略,首先需要找到具有所谓...

256100
来自专栏数据派THU

独家 | 手把手教你学习R语言(附资源链接)

作者:NSS 翻译:杨金鸿 术语校对:韩海畴 全文校对:林亦霖 本文约3000字,建议阅读7分钟。 本文为带大家了解R语言以及分段式的步骤教程! 人们学习R语言...

36370
来自专栏编程

机器学习巅峰之战,python最火,R最具潜力

关于哪种语言更适合数据科学的问题有一个非常热门的争论:R还是Python。答案是两个。人们经常比较R和Python的特性而感到困惑,但我们需要明白,单靠功能本身...

21180
来自专栏数据派THU

独家 | 一探Stack Overflow工作搜索

作者:Aurélien Gasser 翻译:顾佳妮 术语校对:梁傅琪 全文校对:张冬阳 本文长度为6100字,建议阅读20分钟 Aurélien Gasser在...

21950
来自专栏量化投资与机器学习

R语言构建追涨杀跌量化交易模型(附源代码)

作者 张丹(Conan) 来源 http://blog.fens.me Rquant前言最近有读者要求公众号推送几篇关于R语言量化投资的内容。今天推送第一篇。后...

650110

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励